// Generated by `wit-bindgen` 0.58.0. DO NOT EDIT!
// Options used:
//   * std_feature
//   * with "wasi:cli/environment@0.2.12" = "crate::cli::environment"
//   * with "wasi:cli/exit@0.2.12" = "crate::cli::exit"
//   * with "wasi:cli/stdin@0.2.12" = "crate::cli::stdin"
//   * with "wasi:cli/stdout@0.2.12" = "crate::cli::stdout"
//   * with "wasi:cli/stderr@0.2.12" = "crate::cli::stderr"
//   * with "wasi:cli/terminal-input@0.2.12" = "crate::cli::terminal_input"
//   * with "wasi:cli/terminal-output@0.2.12" = "crate::cli::terminal_output"
//   * with "wasi:cli/terminal-stdin@0.2.12" = "crate::cli::terminal_stdin"
//   * with "wasi:cli/terminal-stdout@0.2.12" = "crate::cli::terminal_stdout"
//   * with "wasi:cli/terminal-stderr@0.2.12" = "crate::cli::terminal_stderr"
//   * with "wasi:clocks/monotonic-clock@0.2.12" = "crate::clocks::monotonic_clock"
//   * with "wasi:clocks/wall-clock@0.2.12" = "crate::clocks::wall_clock"
//   * with "wasi:filesystem/types@0.2.12" = "crate::filesystem::types"
//   * with "wasi:filesystem/preopens@0.2.12" = "crate::filesystem::preopens"
//   * with "wasi:io/error@0.2.12" = "crate::io::error"
//   * with "wasi:io/poll@0.2.12" = "crate::io::poll"
//   * with "wasi:io/streams@0.2.12" = "crate::io::streams"
//   * with "wasi:random/random@0.2.12" = "crate::random::random"
//   * with "wasi:random/insecure@0.2.12" = "crate::random::insecure"
//   * with "wasi:random/insecure-seed@0.2.12" = "crate::random::insecure_seed"
//   * with "wasi:sockets/network@0.2.12" = "crate::sockets::network"
//   * with "wasi:sockets/instance-network@0.2.12" = "crate::sockets::instance_network"
//   * with "wasi:sockets/tcp@0.2.12" = "crate::sockets::tcp"
//   * with "wasi:sockets/tcp-create-socket@0.2.12" = "crate::sockets::tcp_create_socket"
//   * with "wasi:sockets/udp@0.2.12" = "crate::sockets::udp"
//   * with "wasi:sockets/udp-create-socket@0.2.12" = "crate::sockets::udp_create_socket"
//   * with "wasi:sockets/ip-name-lookup@0.2.12" = "crate::sockets::ip_name_lookup"
//   * type_section_suffix: "rust-wasip2-1.0.4+wasi-0.2.12-from-crates-io-command-world"
//   * default-bindings-module: "$crate"
//   * export-macro-name: _export_command
//   * pub-export-macro
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::environment as __with_name0;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::exit as __with_name1;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::io::error as __with_name2;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::io::poll as __with_name3;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::io::streams as __with_name4;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::stdin as __with_name5;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::stdout as __with_name6;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::stderr as __with_name7;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::terminal_input as __with_name8;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::terminal_output as __with_name9;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::terminal_stdin as __with_name10;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::terminal_stdout as __with_name11;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::cli::terminal_stderr as __with_name12;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::clocks::monotonic_clock as __with_name13;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::clocks::wall_clock as __with_name14;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::filesystem::types as __with_name15;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::filesystem::preopens as __with_name16;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::sockets::network as __with_name17;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::sockets::instance_network as __with_name18;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::sockets::udp as __with_name19;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::sockets::udp_create_socket as __with_name20;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::sockets::tcp as __with_name21;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::sockets::tcp_create_socket as __with_name22;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::sockets::ip_name_lookup as __with_name23;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::random::random as __with_name24;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::random::insecure as __with_name25;
#[allow(unfulfilled_lint_expectations, unused_imports)]
use crate::random::insecure_seed as __with_name26;
#[rustfmt::skip]
#[allow(dead_code, clippy::all)]
pub mod exports {
    pub mod wasi {
        pub mod cli {
            #[allow(dead_code, async_fn_in_trait, unused_imports, clippy::all)]
            pub mod run {
                #[used]
                #[doc(hidden)]
                static __FORCE_SECTION_REF: fn() = super::super::super::super::__link_custom_section_describing_imports;
                use super::super::super::super::_rt;
                #[doc(hidden)]
                #[allow(non_snake_case, unused_unsafe)]
                pub unsafe fn _export_run_cabi<T_: Guest>() -> i32 {
                    unsafe {
                        #[cfg(target_arch = "wasm32")] _rt::run_ctors_once();
                        let result0 = { T_::run() };
                        let result1 = match result0 {
                            Ok(_) => 0i32,
                            Err(_) => 1i32,
                        };
                        result1
                    }
                }
                pub trait Guest {
                    /// Run the program.
                    #[allow(async_fn_in_trait)]
                    fn run() -> Result<(), ()>;
                }
                #[doc(hidden)]
                #[macro_export]
                macro_rules! __export_wasi_cli_run_0_2_12_cabi {
                    ($ty:ident with_types_in $($path_to_types:tt)*) => {
                        const _ : () = { #[unsafe (export_name =
                        "wasi:cli/run@0.2.12#run")] unsafe extern "C" fn export_run() ->
                        i32 { unsafe { $($path_to_types)*:: _export_run_cabi::<$ty > () }
                        } };
                    };
                }
                #[doc(hidden)]
                pub use __export_wasi_cli_run_0_2_12_cabi;
            }
        }
    }
}
#[rustfmt::skip]
mod _rt {
    #![allow(dead_code, unused_imports, clippy::all)]
    #[cfg(target_arch = "wasm32")]
    pub fn run_ctors_once() {
        wit_bindgen::rt::run_ctors_once();
    }
}
/// Generates `#[unsafe(no_mangle)]` functions to export the specified type as
/// the root implementation of all generated traits.
///
/// For more information see the documentation of `wit_bindgen::generate!`.
///
/// ```rust
/// # macro_rules! _export_command{ ($($t:tt)*) => (); }
/// # trait Guest {}
/// struct MyType;
///
/// impl Guest for MyType {
///     // ...
/// }
///
/// _export_command!(MyType);
/// ```
#[allow(unused_macros)]
#[doc(hidden)]
#[macro_export]
macro_rules! __export_command_impl {
    ($ty:ident) => {
        $crate::_export_command!($ty with_types_in $crate);
    };
    ($ty:ident with_types_in $($path_to_types_root:tt)*) => {
        $($path_to_types_root)*::
        exports::wasi::cli::run::__export_wasi_cli_run_0_2_12_cabi!($ty with_types_in
        $($path_to_types_root)*:: exports::wasi::cli::run); const _ : () = {
        #[rustfmt::skip] #[cfg(target_arch = "wasm32")] #[unsafe (link_section =
        "component-type:wit-bindgen:0.58.0:wasi:cli@0.2.12:command:imports and exportsrust-wasip2-1.0.4+wasi-0.2.12-from-crates-io-command-world")]
        #[doc(hidden)] #[allow(clippy::octal_escapes)] pub static
        __WIT_BINDGEN_COMPONENT_TYPE : [u8; 10839] = *
        b"\
\0asm\x0d\0\x01\0\0\x19\x16wit-component-encoding\x04\0\x07\xd9S\x01A\x02\x01AI\x01\
B\x0a\x01o\x02ss\x01p\0\x01@\0\0\x01\x04\0\x0fget-environment\x01\x02\x01ps\x01@\
\0\0\x03\x04\0\x0dget-arguments\x01\x04\x01ks\x01@\0\0\x05\x04\0\x0binitial-cwd\x01\
\x06\x03\0\x1bwasi:cli/environment@0.2.12\x05\0\x01B\x05\x01j\0\0\x01@\x01\x06st\
atus\0\x01\0\x04\0\x04exit\x01\x01\x01@\x01\x0bstatus-code}\x01\0\x04\0\x0eexit-\
with-code\x01\x02\x03\0\x14wasi:cli/exit@0.2.12\x05\x01\x01B\x04\x04\0\x05error\x03\
\x01\x01h\0\x01@\x01\x04self\x01\0s\x04\0\x1d[method]error.to-debug-string\x01\x02\
\x03\0\x14wasi:io/error@0.2.12\x05\x02\x01B\x0a\x04\0\x08pollable\x03\x01\x01h\0\
\x01@\x01\x04self\x01\0\x7f\x04\0\x16[method]pollable.ready\x01\x02\x01@\x01\x04\
self\x01\x01\0\x04\0\x16[method]pollable.block\x01\x03\x01p\x01\x01py\x01@\x01\x02\
in\x04\0\x05\x04\0\x04poll\x01\x06\x03\0\x13wasi:io/poll@0.2.12\x05\x03\x02\x03\0\
\x02\x05error\x02\x03\0\x03\x08pollable\x01B(\x02\x03\x02\x01\x04\x04\0\x05error\
\x03\0\0\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\x02\x01i\x01\x01q\x02\x15la\
st-operation-failed\x01\x04\0\x06closed\0\0\x04\0\x0cstream-error\x03\0\x05\x04\0\
\x0cinput-stream\x03\x01\x04\0\x0doutput-stream\x03\x01\x01h\x07\x01p}\x01j\x01\x0a\
\x01\x06\x01@\x02\x04self\x09\x03lenw\0\x0b\x04\0\x19[method]input-stream.read\x01\
\x0c\x04\0\"[method]input-stream.blocking-read\x01\x0c\x01j\x01w\x01\x06\x01@\x02\
\x04self\x09\x03lenw\0\x0d\x04\0\x19[method]input-stream.skip\x01\x0e\x04\0\"[me\
thod]input-stream.blocking-skip\x01\x0e\x01i\x03\x01@\x01\x04self\x09\0\x0f\x04\0\
\x1e[method]input-stream.subscribe\x01\x10\x01h\x08\x01@\x01\x04self\x11\0\x0d\x04\
\0![method]output-stream.check-write\x01\x12\x01j\0\x01\x06\x01@\x02\x04self\x11\
\x08contents\x0a\0\x13\x04\0\x1b[method]output-stream.write\x01\x14\x04\0.[metho\
d]output-stream.blocking-write-and-flush\x01\x14\x01@\x01\x04self\x11\0\x13\x04\0\
\x1b[method]output-stream.flush\x01\x15\x04\0$[method]output-stream.blocking-flu\
sh\x01\x15\x01@\x01\x04self\x11\0\x0f\x04\0\x1f[method]output-stream.subscribe\x01\
\x16\x01@\x02\x04self\x11\x03lenw\0\x13\x04\0\"[method]output-stream.write-zeroe\
s\x01\x17\x04\05[method]output-stream.blocking-write-zeroes-and-flush\x01\x17\x01\
@\x03\x04self\x11\x03src\x09\x03lenw\0\x0d\x04\0\x1c[method]output-stream.splice\
\x01\x18\x04\0%[method]output-stream.blocking-splice\x01\x18\x03\0\x16wasi:io/st\
reams@0.2.12\x05\x06\x02\x03\0\x04\x0cinput-stream\x01B\x05\x02\x03\x02\x01\x07\x04\
\0\x0cinput-stream\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x09get-stdin\x01\x03\x03\0\
\x15wasi:cli/stdin@0.2.12\x05\x08\x02\x03\0\x04\x0doutput-stream\x01B\x05\x02\x03\
\x02\x01\x09\x04\0\x0doutput-stream\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x0aget-s\
tdout\x01\x03\x03\0\x16wasi:cli/stdout@0.2.12\x05\x0a\x01B\x05\x02\x03\x02\x01\x09\
\x04\0\x0doutput-stream\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x0aget-stderr\x01\x03\
\x03\0\x16wasi:cli/stderr@0.2.12\x05\x0b\x01B\x01\x04\0\x0eterminal-input\x03\x01\
\x03\0\x1ewasi:cli/terminal-input@0.2.12\x05\x0c\x01B\x01\x04\0\x0fterminal-outp\
ut\x03\x01\x03\0\x1fwasi:cli/terminal-output@0.2.12\x05\x0d\x02\x03\0\x08\x0eter\
minal-input\x01B\x06\x02\x03\x02\x01\x0e\x04\0\x0eterminal-input\x03\0\0\x01i\x01\
\x01k\x02\x01@\0\0\x03\x04\0\x12get-terminal-stdin\x01\x04\x03\0\x1ewasi:cli/ter\
minal-stdin@0.2.12\x05\x0f\x02\x03\0\x09\x0fterminal-output\x01B\x06\x02\x03\x02\
\x01\x10\x04\0\x0fterminal-output\x03\0\0\x01i\x01\x01k\x02\x01@\0\0\x03\x04\0\x13\
get-terminal-stdout\x01\x04\x03\0\x1fwasi:cli/terminal-stdout@0.2.12\x05\x11\x01\
B\x06\x02\x03\x02\x01\x10\x04\0\x0fterminal-output\x03\0\0\x01i\x01\x01k\x02\x01\
@\0\0\x03\x04\0\x13get-terminal-stderr\x01\x04\x03\0\x1fwasi:cli/terminal-stderr\
@0.2.12\x05\x12\x01B\x0f\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\0\x01w\x04\0\
\x07instant\x03\0\x02\x01w\x04\0\x08duration\x03\0\x04\x01@\0\0\x03\x04\0\x03now\
\x01\x06\x01@\0\0\x05\x04\0\x0aresolution\x01\x07\x01i\x01\x01@\x01\x04when\x03\0\
\x08\x04\0\x11subscribe-instant\x01\x09\x01@\x01\x04when\x05\0\x08\x04\0\x12subs\
cribe-duration\x01\x0a\x03\0\"wasi:clocks/monotonic-clock@0.2.12\x05\x13\x01B\x05\
\x01r\x02\x07secondsw\x0bnanosecondsy\x04\0\x08datetime\x03\0\0\x01@\0\0\x01\x04\
\0\x03now\x01\x02\x04\0\x0aresolution\x01\x02\x03\0\x1dwasi:clocks/wall-clock@0.\
2.12\x05\x14\x02\x03\0\x04\x05error\x02\x03\0\x0e\x08datetime\x01Br\x02\x03\x02\x01\
\x07\x04\0\x0cinput-stream\x03\0\0\x02\x03\x02\x01\x09\x04\0\x0doutput-stream\x03\
\0\x02\x02\x03\x02\x01\x15\x04\0\x05error\x03\0\x04\x02\x03\x02\x01\x16\x04\0\x08\
datetime\x03\0\x06\x01w\x04\0\x08filesize\x03\0\x08\x01m\x08\x07unknown\x0cblock\
-device\x10character-device\x09directory\x04fifo\x0dsymbolic-link\x0cregular-fil\
e\x06socket\x04\0\x0fdescriptor-type\x03\0\x0a\x01n\x06\x04read\x05write\x13file\
-integrity-sync\x13data-integrity-sync\x14requested-write-sync\x10mutate-directo\
ry\x04\0\x10descriptor-flags\x03\0\x0c\x01n\x01\x0esymlink-follow\x04\0\x0apath-\
flags\x03\0\x0e\x01n\x04\x06create\x09directory\x09exclusive\x08truncate\x04\0\x0a\
open-flags\x03\0\x10\x01w\x04\0\x0alink-count\x03\0\x12\x01k\x07\x01r\x06\x04typ\
e\x0b\x0alink-count\x13\x04size\x09\x15data-access-timestamp\x14\x1bdata-modific\
ation-timestamp\x14\x17status-change-timestamp\x14\x04\0\x0fdescriptor-stat\x03\0\
\x15\x01q\x03\x09no-change\0\0\x03now\0\0\x09timestamp\x01\x07\0\x04\0\x0dnew-ti\
mestamp\x03\0\x17\x01r\x02\x04type\x0b\x04names\x04\0\x0fdirectory-entry\x03\0\x19\
\x01m%\x06access\x0bwould-block\x07already\x0ebad-descriptor\x04busy\x08deadlock\
\x05quota\x05exist\x0efile-too-large\x15illegal-byte-sequence\x0bin-progress\x0b\
interrupted\x07invalid\x02io\x0cis-directory\x04loop\x0etoo-many-links\x0cmessag\
e-size\x0dname-too-long\x09no-device\x08no-entry\x07no-lock\x13insufficient-memo\
ry\x12insufficient-space\x0dnot-directory\x09not-empty\x0fnot-recoverable\x0buns\
upported\x06no-tty\x0eno-such-device\x08overflow\x0dnot-permitted\x04pipe\x09rea\
d-only\x0cinvalid-seek\x0etext-file-busy\x0ccross-device\x04\0\x0aerror-code\x03\
\0\x1b\x01m\x06\x06normal\x0asequential\x06random\x09will-need\x09dont-need\x08n\
o-reuse\x04\0\x06advice\x03\0\x1d\x01r\x02\x05lowerw\x05upperw\x04\0\x13metadata\
-hash-value\x03\0\x1f\x04\0\x0adescriptor\x03\x01\x04\0\x16directory-entry-strea\
m\x03\x01\x01h!\x01i\x01\x01j\x01$\x01\x1c\x01@\x02\x04self#\x06offset\x09\0%\x04\
\0\"[method]descriptor.read-via-stream\x01&\x01i\x03\x01j\x01'\x01\x1c\x01@\x02\x04\
self#\x06offset\x09\0(\x04\0#[method]descriptor.write-via-stream\x01)\x01@\x01\x04\
self#\0(\x04\0$[method]descriptor.append-via-stream\x01*\x01j\0\x01\x1c\x01@\x04\
\x04self#\x06offset\x09\x06length\x09\x06advice\x1e\0+\x04\0\x19[method]descript\
or.advise\x01,\x01@\x01\x04self#\0+\x04\0\x1c[method]descriptor.sync-data\x01-\x01\
j\x01\x0d\x01\x1c\x01@\x01\x04self#\0.\x04\0\x1c[method]descriptor.get-flags\x01\
/\x01j\x01\x0b\x01\x1c\x01@\x01\x04self#\00\x04\0\x1b[method]descriptor.get-type\
\x011\x01@\x02\x04self#\x04size\x09\0+\x04\0\x1b[method]descriptor.set-size\x012\
\x01@\x03\x04self#\x15data-access-timestamp\x18\x1bdata-modification-timestamp\x18\
\0+\x04\0\x1c[method]descriptor.set-times\x013\x01p}\x01o\x024\x7f\x01j\x015\x01\
\x1c\x01@\x03\x04self#\x06length\x09\x06offset\x09\06\x04\0\x17[method]descripto\
r.read\x017\x01j\x01\x09\x01\x1c\x01@\x03\x04self#\x06buffer4\x06offset\x09\08\x04\
\0\x18[method]descriptor.write\x019\x01i\"\x01j\x01:\x01\x1c\x01@\x01\x04self#\0\
;\x04\0![method]descriptor.read-directory\x01<\x04\0\x17[method]descriptor.sync\x01\
-\x01@\x02\x04self#\x04paths\0+\x04\0&[method]descriptor.create-directory-at\x01\
=\x01j\x01\x16\x01\x1c\x01@\x01\x04self#\0>\x04\0\x17[method]descriptor.stat\x01\
?\x01@\x03\x04self#\x0apath-flags\x0f\x04paths\0>\x04\0\x1a[method]descriptor.st\
at-at\x01@\x01@\x05\x04self#\x0apath-flags\x0f\x04paths\x15data-access-timestamp\
\x18\x1bdata-modification-timestamp\x18\0+\x04\0\x1f[method]descriptor.set-times\
-at\x01A\x01@\x05\x04self#\x0eold-path-flags\x0f\x08old-paths\x0enew-descriptor#\
\x08new-paths\0+\x04\0\x1a[method]descriptor.link-at\x01B\x01i!\x01j\x01\xc3\0\x01\
\x1c\x01@\x05\x04self#\x0apath-flags\x0f\x04paths\x0aopen-flags\x11\x05flags\x0d\
\0\xc4\0\x04\0\x1a[method]descriptor.open-at\x01E\x01j\x01s\x01\x1c\x01@\x02\x04\
self#\x04paths\0\xc6\0\x04\0\x1e[method]descriptor.readlink-at\x01G\x04\0&[metho\
d]descriptor.remove-directory-at\x01=\x01@\x04\x04self#\x08old-paths\x0enew-desc\
riptor#\x08new-paths\0+\x04\0\x1c[method]descriptor.rename-at\x01H\x01@\x03\x04s\
elf#\x08old-paths\x08new-paths\0+\x04\0\x1d[method]descriptor.symlink-at\x01I\x04\
\0![method]descriptor.unlink-file-at\x01=\x01@\x02\x04self#\x05other#\0\x7f\x04\0\
![method]descriptor.is-same-object\x01J\x01j\x01\x20\x01\x1c\x01@\x01\x04self#\0\
\xcb\0\x04\0\x20[method]descriptor.metadata-hash\x01L\x01@\x03\x04self#\x0apath-\
flags\x0f\x04paths\0\xcb\0\x04\0#[method]descriptor.metadata-hash-at\x01M\x01h\"\
\x01k\x1a\x01j\x01\xcf\0\x01\x1c\x01@\x01\x04self\xce\0\0\xd0\0\x04\03[method]di\
rectory-entry-stream.read-directory-entry\x01Q\x01h\x05\x01k\x1c\x01@\x01\x03err\
\xd2\0\0\xd3\0\x04\0\x15filesystem-error-code\x01T\x03\0\x1cwasi:filesystem/type\
s@0.2.12\x05\x17\x02\x03\0\x0f\x0adescriptor\x01B\x07\x02\x03\x02\x01\x18\x04\0\x0a\
descriptor\x03\0\0\x01i\x01\x01o\x02\x02s\x01p\x03\x01@\0\0\x04\x04\0\x0fget-dir\
ectories\x01\x05\x03\0\x1fwasi:filesystem/preopens@0.2.12\x05\x19\x01B\x11\x04\0\
\x07network\x03\x01\x01m\x15\x07unknown\x0daccess-denied\x0dnot-supported\x10inv\
alid-argument\x0dout-of-memory\x07timeout\x14concurrency-conflict\x0fnot-in-prog\
ress\x0bwould-block\x0dinvalid-state\x10new-socket-limit\x14address-not-bindable\
\x0eaddress-in-use\x12remote-unreachable\x12connection-refused\x10connection-res\
et\x12connection-aborted\x12datagram-too-large\x11name-unresolvable\x1atemporary\
-resolver-failure\x1apermanent-resolver-failure\x04\0\x0aerror-code\x03\0\x01\x01\
m\x02\x04ipv4\x04ipv6\x04\0\x11ip-address-family\x03\0\x03\x01o\x04}}}}\x04\0\x0c\
ipv4-address\x03\0\x05\x01o\x08{{{{{{{{\x04\0\x0cipv6-address\x03\0\x07\x01q\x02\
\x04ipv4\x01\x06\0\x04ipv6\x01\x08\0\x04\0\x0aip-address\x03\0\x09\x01r\x02\x04p\
ort{\x07address\x06\x04\0\x13ipv4-socket-address\x03\0\x0b\x01r\x04\x04port{\x09\
flow-infoy\x07address\x08\x08scope-idy\x04\0\x13ipv6-socket-address\x03\0\x0d\x01\
q\x02\x04ipv4\x01\x0c\0\x04ipv6\x01\x0e\0\x04\0\x11ip-socket-address\x03\0\x0f\x03\
\0\x1bwasi:sockets/network@0.2.12\x05\x1a\x02\x03\0\x11\x07network\x01B\x05\x02\x03\
\x02\x01\x1b\x04\0\x07network\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x10instance-ne\
twork\x01\x03\x03\0$wasi:sockets/instance-network@0.2.12\x05\x1c\x02\x03\0\x11\x0a\
error-code\x02\x03\0\x11\x11ip-socket-address\x02\x03\0\x11\x11ip-address-family\
\x01BD\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\0\x02\x03\x02\x01\x1b\x04\0\x07\
network\x03\0\x02\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x04\x02\x03\x02\x01\
\x1e\x04\0\x11ip-socket-address\x03\0\x06\x02\x03\x02\x01\x1f\x04\0\x11ip-addres\
s-family\x03\0\x08\x01p}\x01r\x02\x04data\x0a\x0eremote-address\x07\x04\0\x11inc\
oming-datagram\x03\0\x0b\x01k\x07\x01r\x02\x04data\x0a\x0eremote-address\x0d\x04\
\0\x11outgoing-datagram\x03\0\x0e\x04\0\x0audp-socket\x03\x01\x04\0\x18incoming-\
datagram-stream\x03\x01\x04\0\x18outgoing-datagram-stream\x03\x01\x01h\x10\x01h\x03\
\x01j\0\x01\x05\x01@\x03\x04self\x13\x07network\x14\x0dlocal-address\x07\0\x15\x04\
\0\x1d[method]udp-socket.start-bind\x01\x16\x01@\x01\x04self\x13\0\x15\x04\0\x1e\
[method]udp-socket.finish-bind\x01\x17\x01i\x11\x01i\x12\x01o\x02\x18\x19\x01j\x01\
\x1a\x01\x05\x01@\x02\x04self\x13\x0eremote-address\x0d\0\x1b\x04\0\x19[method]u\
dp-socket.stream\x01\x1c\x01j\x01\x07\x01\x05\x01@\x01\x04self\x13\0\x1d\x04\0\x20\
[method]udp-socket.local-address\x01\x1e\x04\0![method]udp-socket.remote-address\
\x01\x1e\x01@\x01\x04self\x13\0\x09\x04\0![method]udp-socket.address-family\x01\x1f\
\x01j\x01}\x01\x05\x01@\x01\x04self\x13\0\x20\x04\0$[method]udp-socket.unicast-h\
op-limit\x01!\x01@\x02\x04self\x13\x05value}\0\x15\x04\0([method]udp-socket.set-\
unicast-hop-limit\x01\"\x01j\x01w\x01\x05\x01@\x01\x04self\x13\0#\x04\0&[method]\
udp-socket.receive-buffer-size\x01$\x01@\x02\x04self\x13\x05valuew\0\x15\x04\0*[\
method]udp-socket.set-receive-buffer-size\x01%\x04\0#[method]udp-socket.send-buf\
fer-size\x01$\x04\0'[method]udp-socket.set-send-buffer-size\x01%\x01i\x01\x01@\x01\
\x04self\x13\0&\x04\0\x1c[method]udp-socket.subscribe\x01'\x01h\x11\x01p\x0c\x01\
j\x01)\x01\x05\x01@\x02\x04self(\x0bmax-resultsw\0*\x04\0([method]incoming-datag\
ram-stream.receive\x01+\x01@\x01\x04self(\0&\x04\0*[method]incoming-datagram-str\
eam.subscribe\x01,\x01h\x12\x01@\x01\x04self-\0#\x04\0+[method]outgoing-datagram\
-stream.check-send\x01.\x01p\x0f\x01@\x02\x04self-\x09datagrams/\0#\x04\0%[metho\
d]outgoing-datagram-stream.send\x010\x01@\x01\x04self-\0&\x04\0*[method]outgoing\
-datagram-stream.subscribe\x011\x03\0\x17wasi:sockets/udp@0.2.12\x05\x20\x02\x03\
\0\x13\x0audp-socket\x01B\x0c\x02\x03\x02\x01\x1b\x04\0\x07network\x03\0\0\x02\x03\
\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x02\x02\x03\x02\x01\x1f\x04\0\x11ip-addre\
ss-family\x03\0\x04\x02\x03\x02\x01!\x04\0\x0audp-socket\x03\0\x06\x01i\x07\x01j\
\x01\x08\x01\x03\x01@\x01\x0eaddress-family\x05\0\x09\x04\0\x11create-udp-socket\
\x01\x0a\x03\0%wasi:sockets/udp-create-socket@0.2.12\x05\"\x02\x03\0\x0d\x08dura\
tion\x01BT\x02\x03\x02\x01\x07\x04\0\x0cinput-stream\x03\0\0\x02\x03\x02\x01\x09\
\x04\0\x0doutput-stream\x03\0\x02\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\x04\
\x02\x03\x02\x01#\x04\0\x08duration\x03\0\x06\x02\x03\x02\x01\x1b\x04\0\x07netwo\
rk\x03\0\x08\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x0a\x02\x03\x02\x01\x1e\
\x04\0\x11ip-socket-address\x03\0\x0c\x02\x03\x02\x01\x1f\x04\0\x11ip-address-fa\
mily\x03\0\x0e\x01m\x03\x07receive\x04send\x04both\x04\0\x0dshutdown-type\x03\0\x10\
\x04\0\x0atcp-socket\x03\x01\x01h\x12\x01h\x09\x01j\0\x01\x0b\x01@\x03\x04self\x13\
\x07network\x14\x0dlocal-address\x0d\0\x15\x04\0\x1d[method]tcp-socket.start-bin\
d\x01\x16\x01@\x01\x04self\x13\0\x15\x04\0\x1e[method]tcp-socket.finish-bind\x01\
\x17\x01@\x03\x04self\x13\x07network\x14\x0eremote-address\x0d\0\x15\x04\0\x20[m\
ethod]tcp-socket.start-connect\x01\x18\x01i\x01\x01i\x03\x01o\x02\x19\x1a\x01j\x01\
\x1b\x01\x0b\x01@\x01\x04self\x13\0\x1c\x04\0![method]tcp-socket.finish-connect\x01\
\x1d\x04\0\x1f[method]tcp-socket.start-listen\x01\x17\x04\0\x20[method]tcp-socke\
t.finish-listen\x01\x17\x01i\x12\x01o\x03\x1e\x19\x1a\x01j\x01\x1f\x01\x0b\x01@\x01\
\x04self\x13\0\x20\x04\0\x19[method]tcp-socket.accept\x01!\x01j\x01\x0d\x01\x0b\x01\
@\x01\x04self\x13\0\"\x04\0\x20[method]tcp-socket.local-address\x01#\x04\0![meth\
od]tcp-socket.remote-address\x01#\x01@\x01\x04self\x13\0\x7f\x04\0\x1f[method]tc\
p-socket.is-listening\x01$\x01@\x01\x04self\x13\0\x0f\x04\0![method]tcp-socket.a\
ddress-family\x01%\x01@\x02\x04self\x13\x05valuew\0\x15\x04\0*[method]tcp-socket\
.set-listen-backlog-size\x01&\x01j\x01\x7f\x01\x0b\x01@\x01\x04self\x13\0'\x04\0\
%[method]tcp-socket.keep-alive-enabled\x01(\x01@\x02\x04self\x13\x05value\x7f\0\x15\
\x04\0)[method]tcp-socket.set-keep-alive-enabled\x01)\x01j\x01\x07\x01\x0b\x01@\x01\
\x04self\x13\0*\x04\0'[method]tcp-socket.keep-alive-idle-time\x01+\x01@\x02\x04s\
elf\x13\x05value\x07\0\x15\x04\0+[method]tcp-socket.set-keep-alive-idle-time\x01\
,\x04\0&[method]tcp-socket.keep-alive-interval\x01+\x04\0*[method]tcp-socket.set\
-keep-alive-interval\x01,\x01j\x01y\x01\x0b\x01@\x01\x04self\x13\0-\x04\0#[metho\
d]tcp-socket.keep-alive-count\x01.\x01@\x02\x04self\x13\x05valuey\0\x15\x04\0'[m\
ethod]tcp-socket.set-keep-alive-count\x01/\x01j\x01}\x01\x0b\x01@\x01\x04self\x13\
\00\x04\0\x1c[method]tcp-socket.hop-limit\x011\x01@\x02\x04self\x13\x05value}\0\x15\
\x04\0\x20[method]tcp-socket.set-hop-limit\x012\x01j\x01w\x01\x0b\x01@\x01\x04se\
lf\x13\03\x04\0&[method]tcp-socket.receive-buffer-size\x014\x04\0*[method]tcp-so\
cket.set-receive-buffer-size\x01&\x04\0#[method]tcp-socket.send-buffer-size\x014\
\x04\0'[method]tcp-socket.set-send-buffer-size\x01&\x01i\x05\x01@\x01\x04self\x13\
\05\x04\0\x1c[method]tcp-socket.subscribe\x016\x01@\x02\x04self\x13\x0dshutdown-\
type\x11\0\x15\x04\0\x1b[method]tcp-socket.shutdown\x017\x03\0\x17wasi:sockets/t\
cp@0.2.12\x05$\x02\x03\0\x15\x0atcp-socket\x01B\x0c\x02\x03\x02\x01\x1b\x04\0\x07\
network\x03\0\0\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x02\x02\x03\x02\x01\
\x1f\x04\0\x11ip-address-family\x03\0\x04\x02\x03\x02\x01%\x04\0\x0atcp-socket\x03\
\0\x06\x01i\x07\x01j\x01\x08\x01\x03\x01@\x01\x0eaddress-family\x05\0\x09\x04\0\x11\
create-tcp-socket\x01\x0a\x03\0%wasi:sockets/tcp-create-socket@0.2.12\x05&\x02\x03\
\0\x11\x0aip-address\x01B\x16\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\0\x02\x03\
\x02\x01\x1b\x04\0\x07network\x03\0\x02\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\
\0\x04\x02\x03\x02\x01'\x04\0\x0aip-address\x03\0\x06\x04\0\x16resolve-address-s\
tream\x03\x01\x01h\x08\x01k\x07\x01j\x01\x0a\x01\x05\x01@\x01\x04self\x09\0\x0b\x04\
\03[method]resolve-address-stream.resolve-next-address\x01\x0c\x01i\x01\x01@\x01\
\x04self\x09\0\x0d\x04\0([method]resolve-address-stream.subscribe\x01\x0e\x01h\x03\
\x01i\x08\x01j\x01\x10\x01\x05\x01@\x02\x07network\x0f\x04names\0\x11\x04\0\x11r\
esolve-addresses\x01\x12\x03\0\"wasi:sockets/ip-name-lookup@0.2.12\x05(\x01B\x05\
\x01p}\x01@\x01\x03lenw\0\0\x04\0\x10get-random-bytes\x01\x01\x01@\0\0w\x04\0\x0e\
get-random-u64\x01\x02\x03\0\x19wasi:random/random@0.2.12\x05)\x01B\x05\x01p}\x01\
@\x01\x03lenw\0\0\x04\0\x19get-insecure-random-bytes\x01\x01\x01@\0\0w\x04\0\x17\
get-insecure-random-u64\x01\x02\x03\0\x1bwasi:random/insecure@0.2.12\x05*\x01B\x03\
\x01o\x02ww\x01@\0\0\0\x04\0\x0dinsecure-seed\x01\x01\x03\0\x20wasi:random/insec\
ure-seed@0.2.12\x05+\x01B\x03\x01j\0\0\x01@\0\0\0\x04\0\x03run\x01\x01\x04\0\x13\
wasi:cli/run@0.2.12\x05,\x04\0\x17wasi:cli/command@0.2.12\x04\0\x0b\x0d\x01\0\x07\
command\x03\0\0\0G\x09producers\x01\x0cprocessed-by\x02\x0dwit-component\x070.25\
1.0\x10wit-bindgen-rust\x060.58.0";
        };
    };
}
#[doc(inline)]
pub use __export_command_impl as _export_command;
#[rustfmt::skip]
#[cfg(target_arch = "wasm32")]

#[cfg_attr(feature = "rustc-dep-of-std", unsafe(link_section = "component-type:wit-bindgen:0.58.0:wasi:cli@0.2.12:command-with-all-of-its-exports-removed:encoded worldrust-wasip2-1.0.4+wasi-0.2.12-from-crates-io-command-world-in-libstd"))]
#[cfg_attr(not(feature = "rustc-dep-of-std"), unsafe(link_section = "component-type:wit-bindgen:0.58.0:wasi:cli@0.2.12:command-with-all-of-its-exports-removed:encoded worldrust-wasip2-1.0.4+wasi-0.2.12-from-crates-io-command-world"))]

#[doc(hidden)]
#[allow(clippy::octal_escapes)]
pub static __WIT_BINDGEN_COMPONENT_TYPE: [u8; 10859] = *b"\
\0asm\x0d\0\x01\0\0\x19\x16wit-component-encoding\x04\0\x07\xcdS\x01A\x02\x01AG\x01\
B\x0a\x01o\x02ss\x01p\0\x01@\0\0\x01\x04\0\x0fget-environment\x01\x02\x01ps\x01@\
\0\0\x03\x04\0\x0dget-arguments\x01\x04\x01ks\x01@\0\0\x05\x04\0\x0binitial-cwd\x01\
\x06\x03\0\x1bwasi:cli/environment@0.2.12\x05\0\x01B\x05\x01j\0\0\x01@\x01\x06st\
atus\0\x01\0\x04\0\x04exit\x01\x01\x01@\x01\x0bstatus-code}\x01\0\x04\0\x0eexit-\
with-code\x01\x02\x03\0\x14wasi:cli/exit@0.2.12\x05\x01\x01B\x04\x04\0\x05error\x03\
\x01\x01h\0\x01@\x01\x04self\x01\0s\x04\0\x1d[method]error.to-debug-string\x01\x02\
\x03\0\x14wasi:io/error@0.2.12\x05\x02\x01B\x0a\x04\0\x08pollable\x03\x01\x01h\0\
\x01@\x01\x04self\x01\0\x7f\x04\0\x16[method]pollable.ready\x01\x02\x01@\x01\x04\
self\x01\x01\0\x04\0\x16[method]pollable.block\x01\x03\x01p\x01\x01py\x01@\x01\x02\
in\x04\0\x05\x04\0\x04poll\x01\x06\x03\0\x13wasi:io/poll@0.2.12\x05\x03\x02\x03\0\
\x02\x05error\x02\x03\0\x03\x08pollable\x01B(\x02\x03\x02\x01\x04\x04\0\x05error\
\x03\0\0\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\x02\x01i\x01\x01q\x02\x15la\
st-operation-failed\x01\x04\0\x06closed\0\0\x04\0\x0cstream-error\x03\0\x05\x04\0\
\x0cinput-stream\x03\x01\x04\0\x0doutput-stream\x03\x01\x01h\x07\x01p}\x01j\x01\x0a\
\x01\x06\x01@\x02\x04self\x09\x03lenw\0\x0b\x04\0\x19[method]input-stream.read\x01\
\x0c\x04\0\"[method]input-stream.blocking-read\x01\x0c\x01j\x01w\x01\x06\x01@\x02\
\x04self\x09\x03lenw\0\x0d\x04\0\x19[method]input-stream.skip\x01\x0e\x04\0\"[me\
thod]input-stream.blocking-skip\x01\x0e\x01i\x03\x01@\x01\x04self\x09\0\x0f\x04\0\
\x1e[method]input-stream.subscribe\x01\x10\x01h\x08\x01@\x01\x04self\x11\0\x0d\x04\
\0![method]output-stream.check-write\x01\x12\x01j\0\x01\x06\x01@\x02\x04self\x11\
\x08contents\x0a\0\x13\x04\0\x1b[method]output-stream.write\x01\x14\x04\0.[metho\
d]output-stream.blocking-write-and-flush\x01\x14\x01@\x01\x04self\x11\0\x13\x04\0\
\x1b[method]output-stream.flush\x01\x15\x04\0$[method]output-stream.blocking-flu\
sh\x01\x15\x01@\x01\x04self\x11\0\x0f\x04\0\x1f[method]output-stream.subscribe\x01\
\x16\x01@\x02\x04self\x11\x03lenw\0\x13\x04\0\"[method]output-stream.write-zeroe\
s\x01\x17\x04\05[method]output-stream.blocking-write-zeroes-and-flush\x01\x17\x01\
@\x03\x04self\x11\x03src\x09\x03lenw\0\x0d\x04\0\x1c[method]output-stream.splice\
\x01\x18\x04\0%[method]output-stream.blocking-splice\x01\x18\x03\0\x16wasi:io/st\
reams@0.2.12\x05\x06\x02\x03\0\x04\x0cinput-stream\x01B\x05\x02\x03\x02\x01\x07\x04\
\0\x0cinput-stream\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x09get-stdin\x01\x03\x03\0\
\x15wasi:cli/stdin@0.2.12\x05\x08\x02\x03\0\x04\x0doutput-stream\x01B\x05\x02\x03\
\x02\x01\x09\x04\0\x0doutput-stream\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x0aget-s\
tdout\x01\x03\x03\0\x16wasi:cli/stdout@0.2.12\x05\x0a\x01B\x05\x02\x03\x02\x01\x09\
\x04\0\x0doutput-stream\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x0aget-stderr\x01\x03\
\x03\0\x16wasi:cli/stderr@0.2.12\x05\x0b\x01B\x01\x04\0\x0eterminal-input\x03\x01\
\x03\0\x1ewasi:cli/terminal-input@0.2.12\x05\x0c\x01B\x01\x04\0\x0fterminal-outp\
ut\x03\x01\x03\0\x1fwasi:cli/terminal-output@0.2.12\x05\x0d\x02\x03\0\x08\x0eter\
minal-input\x01B\x06\x02\x03\x02\x01\x0e\x04\0\x0eterminal-input\x03\0\0\x01i\x01\
\x01k\x02\x01@\0\0\x03\x04\0\x12get-terminal-stdin\x01\x04\x03\0\x1ewasi:cli/ter\
minal-stdin@0.2.12\x05\x0f\x02\x03\0\x09\x0fterminal-output\x01B\x06\x02\x03\x02\
\x01\x10\x04\0\x0fterminal-output\x03\0\0\x01i\x01\x01k\x02\x01@\0\0\x03\x04\0\x13\
get-terminal-stdout\x01\x04\x03\0\x1fwasi:cli/terminal-stdout@0.2.12\x05\x11\x01\
B\x06\x02\x03\x02\x01\x10\x04\0\x0fterminal-output\x03\0\0\x01i\x01\x01k\x02\x01\
@\0\0\x03\x04\0\x13get-terminal-stderr\x01\x04\x03\0\x1fwasi:cli/terminal-stderr\
@0.2.12\x05\x12\x01B\x0f\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\0\x01w\x04\0\
\x07instant\x03\0\x02\x01w\x04\0\x08duration\x03\0\x04\x01@\0\0\x03\x04\0\x03now\
\x01\x06\x01@\0\0\x05\x04\0\x0aresolution\x01\x07\x01i\x01\x01@\x01\x04when\x03\0\
\x08\x04\0\x11subscribe-instant\x01\x09\x01@\x01\x04when\x05\0\x08\x04\0\x12subs\
cribe-duration\x01\x0a\x03\0\"wasi:clocks/monotonic-clock@0.2.12\x05\x13\x01B\x05\
\x01r\x02\x07secondsw\x0bnanosecondsy\x04\0\x08datetime\x03\0\0\x01@\0\0\x01\x04\
\0\x03now\x01\x02\x04\0\x0aresolution\x01\x02\x03\0\x1dwasi:clocks/wall-clock@0.\
2.12\x05\x14\x02\x03\0\x04\x05error\x02\x03\0\x0e\x08datetime\x01Br\x02\x03\x02\x01\
\x07\x04\0\x0cinput-stream\x03\0\0\x02\x03\x02\x01\x09\x04\0\x0doutput-stream\x03\
\0\x02\x02\x03\x02\x01\x15\x04\0\x05error\x03\0\x04\x02\x03\x02\x01\x16\x04\0\x08\
datetime\x03\0\x06\x01w\x04\0\x08filesize\x03\0\x08\x01m\x08\x07unknown\x0cblock\
-device\x10character-device\x09directory\x04fifo\x0dsymbolic-link\x0cregular-fil\
e\x06socket\x04\0\x0fdescriptor-type\x03\0\x0a\x01n\x06\x04read\x05write\x13file\
-integrity-sync\x13data-integrity-sync\x14requested-write-sync\x10mutate-directo\
ry\x04\0\x10descriptor-flags\x03\0\x0c\x01n\x01\x0esymlink-follow\x04\0\x0apath-\
flags\x03\0\x0e\x01n\x04\x06create\x09directory\x09exclusive\x08truncate\x04\0\x0a\
open-flags\x03\0\x10\x01w\x04\0\x0alink-count\x03\0\x12\x01k\x07\x01r\x06\x04typ\
e\x0b\x0alink-count\x13\x04size\x09\x15data-access-timestamp\x14\x1bdata-modific\
ation-timestamp\x14\x17status-change-timestamp\x14\x04\0\x0fdescriptor-stat\x03\0\
\x15\x01q\x03\x09no-change\0\0\x03now\0\0\x09timestamp\x01\x07\0\x04\0\x0dnew-ti\
mestamp\x03\0\x17\x01r\x02\x04type\x0b\x04names\x04\0\x0fdirectory-entry\x03\0\x19\
\x01m%\x06access\x0bwould-block\x07already\x0ebad-descriptor\x04busy\x08deadlock\
\x05quota\x05exist\x0efile-too-large\x15illegal-byte-sequence\x0bin-progress\x0b\
interrupted\x07invalid\x02io\x0cis-directory\x04loop\x0etoo-many-links\x0cmessag\
e-size\x0dname-too-long\x09no-device\x08no-entry\x07no-lock\x13insufficient-memo\
ry\x12insufficient-space\x0dnot-directory\x09not-empty\x0fnot-recoverable\x0buns\
upported\x06no-tty\x0eno-such-device\x08overflow\x0dnot-permitted\x04pipe\x09rea\
d-only\x0cinvalid-seek\x0etext-file-busy\x0ccross-device\x04\0\x0aerror-code\x03\
\0\x1b\x01m\x06\x06normal\x0asequential\x06random\x09will-need\x09dont-need\x08n\
o-reuse\x04\0\x06advice\x03\0\x1d\x01r\x02\x05lowerw\x05upperw\x04\0\x13metadata\
-hash-value\x03\0\x1f\x04\0\x0adescriptor\x03\x01\x04\0\x16directory-entry-strea\
m\x03\x01\x01h!\x01i\x01\x01j\x01$\x01\x1c\x01@\x02\x04self#\x06offset\x09\0%\x04\
\0\"[method]descriptor.read-via-stream\x01&\x01i\x03\x01j\x01'\x01\x1c\x01@\x02\x04\
self#\x06offset\x09\0(\x04\0#[method]descriptor.write-via-stream\x01)\x01@\x01\x04\
self#\0(\x04\0$[method]descriptor.append-via-stream\x01*\x01j\0\x01\x1c\x01@\x04\
\x04self#\x06offset\x09\x06length\x09\x06advice\x1e\0+\x04\0\x19[method]descript\
or.advise\x01,\x01@\x01\x04self#\0+\x04\0\x1c[method]descriptor.sync-data\x01-\x01\
j\x01\x0d\x01\x1c\x01@\x01\x04self#\0.\x04\0\x1c[method]descriptor.get-flags\x01\
/\x01j\x01\x0b\x01\x1c\x01@\x01\x04self#\00\x04\0\x1b[method]descriptor.get-type\
\x011\x01@\x02\x04self#\x04size\x09\0+\x04\0\x1b[method]descriptor.set-size\x012\
\x01@\x03\x04self#\x15data-access-timestamp\x18\x1bdata-modification-timestamp\x18\
\0+\x04\0\x1c[method]descriptor.set-times\x013\x01p}\x01o\x024\x7f\x01j\x015\x01\
\x1c\x01@\x03\x04self#\x06length\x09\x06offset\x09\06\x04\0\x17[method]descripto\
r.read\x017\x01j\x01\x09\x01\x1c\x01@\x03\x04self#\x06buffer4\x06offset\x09\08\x04\
\0\x18[method]descriptor.write\x019\x01i\"\x01j\x01:\x01\x1c\x01@\x01\x04self#\0\
;\x04\0![method]descriptor.read-directory\x01<\x04\0\x17[method]descriptor.sync\x01\
-\x01@\x02\x04self#\x04paths\0+\x04\0&[method]descriptor.create-directory-at\x01\
=\x01j\x01\x16\x01\x1c\x01@\x01\x04self#\0>\x04\0\x17[method]descriptor.stat\x01\
?\x01@\x03\x04self#\x0apath-flags\x0f\x04paths\0>\x04\0\x1a[method]descriptor.st\
at-at\x01@\x01@\x05\x04self#\x0apath-flags\x0f\x04paths\x15data-access-timestamp\
\x18\x1bdata-modification-timestamp\x18\0+\x04\0\x1f[method]descriptor.set-times\
-at\x01A\x01@\x05\x04self#\x0eold-path-flags\x0f\x08old-paths\x0enew-descriptor#\
\x08new-paths\0+\x04\0\x1a[method]descriptor.link-at\x01B\x01i!\x01j\x01\xc3\0\x01\
\x1c\x01@\x05\x04self#\x0apath-flags\x0f\x04paths\x0aopen-flags\x11\x05flags\x0d\
\0\xc4\0\x04\0\x1a[method]descriptor.open-at\x01E\x01j\x01s\x01\x1c\x01@\x02\x04\
self#\x04paths\0\xc6\0\x04\0\x1e[method]descriptor.readlink-at\x01G\x04\0&[metho\
d]descriptor.remove-directory-at\x01=\x01@\x04\x04self#\x08old-paths\x0enew-desc\
riptor#\x08new-paths\0+\x04\0\x1c[method]descriptor.rename-at\x01H\x01@\x03\x04s\
elf#\x08old-paths\x08new-paths\0+\x04\0\x1d[method]descriptor.symlink-at\x01I\x04\
\0![method]descriptor.unlink-file-at\x01=\x01@\x02\x04self#\x05other#\0\x7f\x04\0\
![method]descriptor.is-same-object\x01J\x01j\x01\x20\x01\x1c\x01@\x01\x04self#\0\
\xcb\0\x04\0\x20[method]descriptor.metadata-hash\x01L\x01@\x03\x04self#\x0apath-\
flags\x0f\x04paths\0\xcb\0\x04\0#[method]descriptor.metadata-hash-at\x01M\x01h\"\
\x01k\x1a\x01j\x01\xcf\0\x01\x1c\x01@\x01\x04self\xce\0\0\xd0\0\x04\03[method]di\
rectory-entry-stream.read-directory-entry\x01Q\x01h\x05\x01k\x1c\x01@\x01\x03err\
\xd2\0\0\xd3\0\x04\0\x15filesystem-error-code\x01T\x03\0\x1cwasi:filesystem/type\
s@0.2.12\x05\x17\x02\x03\0\x0f\x0adescriptor\x01B\x07\x02\x03\x02\x01\x18\x04\0\x0a\
descriptor\x03\0\0\x01i\x01\x01o\x02\x02s\x01p\x03\x01@\0\0\x04\x04\0\x0fget-dir\
ectories\x01\x05\x03\0\x1fwasi:filesystem/preopens@0.2.12\x05\x19\x01B\x11\x04\0\
\x07network\x03\x01\x01m\x15\x07unknown\x0daccess-denied\x0dnot-supported\x10inv\
alid-argument\x0dout-of-memory\x07timeout\x14concurrency-conflict\x0fnot-in-prog\
ress\x0bwould-block\x0dinvalid-state\x10new-socket-limit\x14address-not-bindable\
\x0eaddress-in-use\x12remote-unreachable\x12connection-refused\x10connection-res\
et\x12connection-aborted\x12datagram-too-large\x11name-unresolvable\x1atemporary\
-resolver-failure\x1apermanent-resolver-failure\x04\0\x0aerror-code\x03\0\x01\x01\
m\x02\x04ipv4\x04ipv6\x04\0\x11ip-address-family\x03\0\x03\x01o\x04}}}}\x04\0\x0c\
ipv4-address\x03\0\x05\x01o\x08{{{{{{{{\x04\0\x0cipv6-address\x03\0\x07\x01q\x02\
\x04ipv4\x01\x06\0\x04ipv6\x01\x08\0\x04\0\x0aip-address\x03\0\x09\x01r\x02\x04p\
ort{\x07address\x06\x04\0\x13ipv4-socket-address\x03\0\x0b\x01r\x04\x04port{\x09\
flow-infoy\x07address\x08\x08scope-idy\x04\0\x13ipv6-socket-address\x03\0\x0d\x01\
q\x02\x04ipv4\x01\x0c\0\x04ipv6\x01\x0e\0\x04\0\x11ip-socket-address\x03\0\x0f\x03\
\0\x1bwasi:sockets/network@0.2.12\x05\x1a\x02\x03\0\x11\x07network\x01B\x05\x02\x03\
\x02\x01\x1b\x04\0\x07network\x03\0\0\x01i\x01\x01@\0\0\x02\x04\0\x10instance-ne\
twork\x01\x03\x03\0$wasi:sockets/instance-network@0.2.12\x05\x1c\x02\x03\0\x11\x0a\
error-code\x02\x03\0\x11\x11ip-socket-address\x02\x03\0\x11\x11ip-address-family\
\x01BD\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\0\x02\x03\x02\x01\x1b\x04\0\x07\
network\x03\0\x02\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x04\x02\x03\x02\x01\
\x1e\x04\0\x11ip-socket-address\x03\0\x06\x02\x03\x02\x01\x1f\x04\0\x11ip-addres\
s-family\x03\0\x08\x01p}\x01r\x02\x04data\x0a\x0eremote-address\x07\x04\0\x11inc\
oming-datagram\x03\0\x0b\x01k\x07\x01r\x02\x04data\x0a\x0eremote-address\x0d\x04\
\0\x11outgoing-datagram\x03\0\x0e\x04\0\x0audp-socket\x03\x01\x04\0\x18incoming-\
datagram-stream\x03\x01\x04\0\x18outgoing-datagram-stream\x03\x01\x01h\x10\x01h\x03\
\x01j\0\x01\x05\x01@\x03\x04self\x13\x07network\x14\x0dlocal-address\x07\0\x15\x04\
\0\x1d[method]udp-socket.start-bind\x01\x16\x01@\x01\x04self\x13\0\x15\x04\0\x1e\
[method]udp-socket.finish-bind\x01\x17\x01i\x11\x01i\x12\x01o\x02\x18\x19\x01j\x01\
\x1a\x01\x05\x01@\x02\x04self\x13\x0eremote-address\x0d\0\x1b\x04\0\x19[method]u\
dp-socket.stream\x01\x1c\x01j\x01\x07\x01\x05\x01@\x01\x04self\x13\0\x1d\x04\0\x20\
[method]udp-socket.local-address\x01\x1e\x04\0![method]udp-socket.remote-address\
\x01\x1e\x01@\x01\x04self\x13\0\x09\x04\0![method]udp-socket.address-family\x01\x1f\
\x01j\x01}\x01\x05\x01@\x01\x04self\x13\0\x20\x04\0$[method]udp-socket.unicast-h\
op-limit\x01!\x01@\x02\x04self\x13\x05value}\0\x15\x04\0([method]udp-socket.set-\
unicast-hop-limit\x01\"\x01j\x01w\x01\x05\x01@\x01\x04self\x13\0#\x04\0&[method]\
udp-socket.receive-buffer-size\x01$\x01@\x02\x04self\x13\x05valuew\0\x15\x04\0*[\
method]udp-socket.set-receive-buffer-size\x01%\x04\0#[method]udp-socket.send-buf\
fer-size\x01$\x04\0'[method]udp-socket.set-send-buffer-size\x01%\x01i\x01\x01@\x01\
\x04self\x13\0&\x04\0\x1c[method]udp-socket.subscribe\x01'\x01h\x11\x01p\x0c\x01\
j\x01)\x01\x05\x01@\x02\x04self(\x0bmax-resultsw\0*\x04\0([method]incoming-datag\
ram-stream.receive\x01+\x01@\x01\x04self(\0&\x04\0*[method]incoming-datagram-str\
eam.subscribe\x01,\x01h\x12\x01@\x01\x04self-\0#\x04\0+[method]outgoing-datagram\
-stream.check-send\x01.\x01p\x0f\x01@\x02\x04self-\x09datagrams/\0#\x04\0%[metho\
d]outgoing-datagram-stream.send\x010\x01@\x01\x04self-\0&\x04\0*[method]outgoing\
-datagram-stream.subscribe\x011\x03\0\x17wasi:sockets/udp@0.2.12\x05\x20\x02\x03\
\0\x13\x0audp-socket\x01B\x0c\x02\x03\x02\x01\x1b\x04\0\x07network\x03\0\0\x02\x03\
\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x02\x02\x03\x02\x01\x1f\x04\0\x11ip-addre\
ss-family\x03\0\x04\x02\x03\x02\x01!\x04\0\x0audp-socket\x03\0\x06\x01i\x07\x01j\
\x01\x08\x01\x03\x01@\x01\x0eaddress-family\x05\0\x09\x04\0\x11create-udp-socket\
\x01\x0a\x03\0%wasi:sockets/udp-create-socket@0.2.12\x05\"\x02\x03\0\x0d\x08dura\
tion\x01BT\x02\x03\x02\x01\x07\x04\0\x0cinput-stream\x03\0\0\x02\x03\x02\x01\x09\
\x04\0\x0doutput-stream\x03\0\x02\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\x04\
\x02\x03\x02\x01#\x04\0\x08duration\x03\0\x06\x02\x03\x02\x01\x1b\x04\0\x07netwo\
rk\x03\0\x08\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x0a\x02\x03\x02\x01\x1e\
\x04\0\x11ip-socket-address\x03\0\x0c\x02\x03\x02\x01\x1f\x04\0\x11ip-address-fa\
mily\x03\0\x0e\x01m\x03\x07receive\x04send\x04both\x04\0\x0dshutdown-type\x03\0\x10\
\x04\0\x0atcp-socket\x03\x01\x01h\x12\x01h\x09\x01j\0\x01\x0b\x01@\x03\x04self\x13\
\x07network\x14\x0dlocal-address\x0d\0\x15\x04\0\x1d[method]tcp-socket.start-bin\
d\x01\x16\x01@\x01\x04self\x13\0\x15\x04\0\x1e[method]tcp-socket.finish-bind\x01\
\x17\x01@\x03\x04self\x13\x07network\x14\x0eremote-address\x0d\0\x15\x04\0\x20[m\
ethod]tcp-socket.start-connect\x01\x18\x01i\x01\x01i\x03\x01o\x02\x19\x1a\x01j\x01\
\x1b\x01\x0b\x01@\x01\x04self\x13\0\x1c\x04\0![method]tcp-socket.finish-connect\x01\
\x1d\x04\0\x1f[method]tcp-socket.start-listen\x01\x17\x04\0\x20[method]tcp-socke\
t.finish-listen\x01\x17\x01i\x12\x01o\x03\x1e\x19\x1a\x01j\x01\x1f\x01\x0b\x01@\x01\
\x04self\x13\0\x20\x04\0\x19[method]tcp-socket.accept\x01!\x01j\x01\x0d\x01\x0b\x01\
@\x01\x04self\x13\0\"\x04\0\x20[method]tcp-socket.local-address\x01#\x04\0![meth\
od]tcp-socket.remote-address\x01#\x01@\x01\x04self\x13\0\x7f\x04\0\x1f[method]tc\
p-socket.is-listening\x01$\x01@\x01\x04self\x13\0\x0f\x04\0![method]tcp-socket.a\
ddress-family\x01%\x01@\x02\x04self\x13\x05valuew\0\x15\x04\0*[method]tcp-socket\
.set-listen-backlog-size\x01&\x01j\x01\x7f\x01\x0b\x01@\x01\x04self\x13\0'\x04\0\
%[method]tcp-socket.keep-alive-enabled\x01(\x01@\x02\x04self\x13\x05value\x7f\0\x15\
\x04\0)[method]tcp-socket.set-keep-alive-enabled\x01)\x01j\x01\x07\x01\x0b\x01@\x01\
\x04self\x13\0*\x04\0'[method]tcp-socket.keep-alive-idle-time\x01+\x01@\x02\x04s\
elf\x13\x05value\x07\0\x15\x04\0+[method]tcp-socket.set-keep-alive-idle-time\x01\
,\x04\0&[method]tcp-socket.keep-alive-interval\x01+\x04\0*[method]tcp-socket.set\
-keep-alive-interval\x01,\x01j\x01y\x01\x0b\x01@\x01\x04self\x13\0-\x04\0#[metho\
d]tcp-socket.keep-alive-count\x01.\x01@\x02\x04self\x13\x05valuey\0\x15\x04\0'[m\
ethod]tcp-socket.set-keep-alive-count\x01/\x01j\x01}\x01\x0b\x01@\x01\x04self\x13\
\00\x04\0\x1c[method]tcp-socket.hop-limit\x011\x01@\x02\x04self\x13\x05value}\0\x15\
\x04\0\x20[method]tcp-socket.set-hop-limit\x012\x01j\x01w\x01\x0b\x01@\x01\x04se\
lf\x13\03\x04\0&[method]tcp-socket.receive-buffer-size\x014\x04\0*[method]tcp-so\
cket.set-receive-buffer-size\x01&\x04\0#[method]tcp-socket.send-buffer-size\x014\
\x04\0'[method]tcp-socket.set-send-buffer-size\x01&\x01i\x05\x01@\x01\x04self\x13\
\05\x04\0\x1c[method]tcp-socket.subscribe\x016\x01@\x02\x04self\x13\x0dshutdown-\
type\x11\0\x15\x04\0\x1b[method]tcp-socket.shutdown\x017\x03\0\x17wasi:sockets/t\
cp@0.2.12\x05$\x02\x03\0\x15\x0atcp-socket\x01B\x0c\x02\x03\x02\x01\x1b\x04\0\x07\
network\x03\0\0\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\0\x02\x02\x03\x02\x01\
\x1f\x04\0\x11ip-address-family\x03\0\x04\x02\x03\x02\x01%\x04\0\x0atcp-socket\x03\
\0\x06\x01i\x07\x01j\x01\x08\x01\x03\x01@\x01\x0eaddress-family\x05\0\x09\x04\0\x11\
create-tcp-socket\x01\x0a\x03\0%wasi:sockets/tcp-create-socket@0.2.12\x05&\x02\x03\
\0\x11\x0aip-address\x01B\x16\x02\x03\x02\x01\x05\x04\0\x08pollable\x03\0\0\x02\x03\
\x02\x01\x1b\x04\0\x07network\x03\0\x02\x02\x03\x02\x01\x1d\x04\0\x0aerror-code\x03\
\0\x04\x02\x03\x02\x01'\x04\0\x0aip-address\x03\0\x06\x04\0\x16resolve-address-s\
tream\x03\x01\x01h\x08\x01k\x07\x01j\x01\x0a\x01\x05\x01@\x01\x04self\x09\0\x0b\x04\
\03[method]resolve-address-stream.resolve-next-address\x01\x0c\x01i\x01\x01@\x01\
\x04self\x09\0\x0d\x04\0([method]resolve-address-stream.subscribe\x01\x0e\x01h\x03\
\x01i\x08\x01j\x01\x10\x01\x05\x01@\x02\x07network\x0f\x04names\0\x11\x04\0\x11r\
esolve-addresses\x01\x12\x03\0\"wasi:sockets/ip-name-lookup@0.2.12\x05(\x01B\x05\
\x01p}\x01@\x01\x03lenw\0\0\x04\0\x10get-random-bytes\x01\x01\x01@\0\0w\x04\0\x0e\
get-random-u64\x01\x02\x03\0\x19wasi:random/random@0.2.12\x05)\x01B\x05\x01p}\x01\
@\x01\x03lenw\0\0\x04\0\x19get-insecure-random-bytes\x01\x01\x01@\0\0w\x04\0\x17\
get-insecure-random-u64\x01\x02\x03\0\x1bwasi:random/insecure@0.2.12\x05*\x01B\x03\
\x01o\x02ww\x01@\0\0\0\x04\0\x0dinsecure-seed\x01\x01\x03\0\x20wasi:random/insec\
ure-seed@0.2.12\x05+\x04\07wasi:cli/command-with-all-of-its-exports-removed@0.2.\
12\x04\0\x0b-\x01\0'command-with-all-of-its-exports-removed\x03\0\0\0G\x09produc\
ers\x01\x0cprocessed-by\x02\x0dwit-component\x070.251.0\x10wit-bindgen-rust\x060\
.58.0";
#[inline(never)]
#[doc(hidden)]
pub fn __link_custom_section_describing_imports() {
    wit_bindgen::rt::maybe_link_cabi_realloc();
}
