[INFO] cloning repository https://github.com/nikomatsakis/rusty-wam [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nikomatsakis/rusty-wam" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnikomatsakis%2Frusty-wam", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnikomatsakis%2Frusty-wam'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ec9b0daa9ee159dc136c905322df912c9a035678 [INFO] checking nikomatsakis/rusty-wam against beta for pr-78714 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnikomatsakis%2Frusty-wam" "/workspace/builds/worker-11/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-11/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/nikomatsakis/rusty-wam on toolchain beta [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/nikomatsakis/rusty-wam [INFO] removed path dependency lalrpop-intern from git repo https://github.com/nikomatsakis/rusty-wam [INFO] finished tweaking git repo https://github.com/nikomatsakis/rusty-wam [INFO] tweaked toml for git repo https://github.com/nikomatsakis/rusty-wam written to /workspace/builds/worker-11/source/Cargo.toml [INFO] crate git repo https://github.com/nikomatsakis/rusty-wam already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: dependency (lalrpop-intern) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] error: the lock file /workspace/builds/worker-11/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag. [INFO] the lockfile is outdated, regenerating it [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: dependency (lalrpop-intern) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+beta" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] acca4c424f7de7d69823fe98c422e7d8e591d55a2f8b4294d287ecaed9eb5343 [INFO] running `Command { std: "docker" "start" "-a" "acca4c424f7de7d69823fe98c422e7d8e591d55a2f8b4294d287ecaed9eb5343", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "acca4c424f7de7d69823fe98c422e7d8e591d55a2f8b4294d287ecaed9eb5343", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "acca4c424f7de7d69823fe98c422e7d8e591d55a2f8b4294d287ecaed9eb5343", kill_on_drop: false }` [INFO] [stdout] acca4c424f7de7d69823fe98c422e7d8e591d55a2f8b4294d287ecaed9eb5343 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+beta" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0340929a19f7977ce57720d07ec3f1f7fbe383ab6e2f47062c38938461e70ea1 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "0340929a19f7977ce57720d07ec3f1f7fbe383ab6e2f47062c38938461e70ea1", kill_on_drop: false }` [INFO] [stderr] warning: dependency (lalrpop-intern) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions [INFO] [stderr] Checking lalrpop-intern v0.15.1 [INFO] [stderr] Checking wam-tutorial v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/ast/mod.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | try!(write!(fmt, "{}", self.functor.text())); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/ast/mod.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | try!(write!(fmt, "{}{:?}", sep, term)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interpret/mod.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | try!(self.machine.get_structure(structure.functor, into)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interpret/mod.rs:138:25 [INFO] [stdout] | [INFO] [stdout] 138 | try!(self.machine.unify_value(reg)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interpret/mod.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | try!(self.structure(substructure, reg)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:274:17 [INFO] [stdout] | [INFO] [stdout] 274 | try!(write!(fmt, "{}", functor.text())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:276:21 [INFO] [stdout] | [INFO] [stdout] 276 | try!(write!(fmt, "(")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:278:21 [INFO] [stdout] | [INFO] [stdout] 278 | try!(self.write(fmt, slot)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:281:25 [INFO] [stdout] | [INFO] [stdout] 281 | try!(write!(fmt, ",")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:282:25 [INFO] [stdout] | [INFO] [stdout] 282 | try!(self.write(fmt, slot)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:284:21 [INFO] [stdout] | [INFO] [stdout] 284 | try!(write!(fmt, ")")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:311:9 [INFO] [stdout] | [INFO] [stdout] 311 | try!(writeln!(fmt, "Memory {{")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:313:13 [INFO] [stdout] | [INFO] [stdout] 313 | try!(writeln!(fmt, " H{:?}: {:?}", i, cell)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 315 | try!(writeln!(fmt, "")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:317:13 [INFO] [stdout] | [INFO] [stdout] 317 | try!(writeln!(fmt, " R{:?}: {:?}", i, cell)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mod.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | try!(self.mem.unify(reg.to_address(), next.to_address())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/ast/mod.rs:42:1 [INFO] [stdout] | [INFO] [stdout] 42 | / macro_rules! term { [INFO] [stdout] 43 | | ($($args:tt)*) => { [INFO] [stdout] 44 | | { [INFO] [stdout] 45 | | let (term, ()) = terms_tt!($($args,)*,,); [INFO] [stdout] ... | [INFO] [stdout] 48 | | } [INFO] [stdout] 49 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/ast/mod.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | / macro_rules! structure { [INFO] [stdout] 52 | | ($($args:tt)*) => { [INFO] [stdout] 53 | | match terms_tt!($($args,)*,,) { [INFO] [stdout] 54 | | ($crate::ast::Term::Structure(s), ()) => s, [INFO] [stdout] ... | [INFO] [stdout] 57 | | } [INFO] [stdout] 58 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/ast/mod.rs:60:1 [INFO] [stdout] | [INFO] [stdout] 60 | / macro_rules! terms_tt { [INFO] [stdout] 61 | | () => { [INFO] [stdout] 62 | | () [INFO] [stdout] 63 | | }; [INFO] [stdout] ... | [INFO] [stdout] 99 | | }; [INFO] [stdout] 100 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/functor.rs:25:1 [INFO] [stdout] | [INFO] [stdout] 25 | / macro_rules! functor { [INFO] [stdout] 26 | | ($x:ident / $n:expr) => { [INFO] [stdout] 27 | | $crate::functor::Functor::new( [INFO] [stdout] 28 | | $crate::intern::intern(stringify!($x)), [INFO] [stdout] 29 | | $n) [INFO] [stdout] 30 | | } [INFO] [stdout] 31 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/ast/mod.rs:31:13 [INFO] [stdout] | [INFO] [stdout] 31 | try!(write!(fmt, "{}", self.functor.text())); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/ast/mod.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | try!(write!(fmt, "{}{:?}", sep, term)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interpret/mod.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | try!(self.machine.get_structure(structure.functor, into)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interpret/mod.rs:138:25 [INFO] [stdout] | [INFO] [stdout] 138 | try!(self.machine.unify_value(reg)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/interpret/mod.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | try!(self.structure(substructure, reg)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:274:17 [INFO] [stdout] | [INFO] [stdout] 274 | try!(write!(fmt, "{}", functor.text())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:276:21 [INFO] [stdout] | [INFO] [stdout] 276 | try!(write!(fmt, "(")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:278:21 [INFO] [stdout] | [INFO] [stdout] 278 | try!(self.write(fmt, slot)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:281:25 [INFO] [stdout] | [INFO] [stdout] 281 | try!(write!(fmt, ",")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:282:25 [INFO] [stdout] | [INFO] [stdout] 282 | try!(self.write(fmt, slot)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:284:21 [INFO] [stdout] | [INFO] [stdout] 284 | try!(write!(fmt, ")")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:311:9 [INFO] [stdout] | [INFO] [stdout] 311 | try!(writeln!(fmt, "Memory {{")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:313:13 [INFO] [stdout] | [INFO] [stdout] 313 | try!(writeln!(fmt, " H{:?}: {:?}", i, cell)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 315 | try!(writeln!(fmt, "")); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mem.rs:317:13 [INFO] [stdout] | [INFO] [stdout] 317 | try!(writeln!(fmt, " R{:?}: {:?}", i, cell)); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/test.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | try!(machine.get_structure(functor!(p/3), Register(0))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/test.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | try!(machine.get_structure(functor!(f/1), Register(1))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/test.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | try!(machine.get_structure(functor!(h/2), Register(2))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/test.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | try!(machine.unify_value(Register(3))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/test.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | try!(machine.get_structure(functor!(f/1), Register(5))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/test.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | try!(machine.get_structure(functor!(a/0), Register(6))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/machine/mod.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | try!(self.mem.unify(reg.to_address(), next.to_address())); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0601]: `main` function not found in crate `wam_tutorial` [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / extern crate lalrpop_intern as intern; [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | #[macro_use] [INFO] [stdout] 4 | | mod ast; [INFO] [stdout] ... | [INFO] [stdout] 9 | | mod interpret; [INFO] [stdout] 10 | | mod machine; [INFO] [stdout] | |____________^ consider adding a `main` function to `src/main.rs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 20 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0601`. [INFO] [stdout] [INFO] [stderr] error: could not compile `wam-tutorial` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: 22 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "0340929a19f7977ce57720d07ec3f1f7fbe383ab6e2f47062c38938461e70ea1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0340929a19f7977ce57720d07ec3f1f7fbe383ab6e2f47062c38938461e70ea1", kill_on_drop: false }` [INFO] [stdout] 0340929a19f7977ce57720d07ec3f1f7fbe383ab6e2f47062c38938461e70ea1