[INFO] cloning repository https://github.com/dezzare/rust_chat [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dezzare/rust_chat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdezzare%2Frust_chat", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdezzare%2Frust_chat'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2cb9b607473019035936569a8a6af85a7880b2af [INFO] checking dezzare/rust_chat against master#3350c1eb3fd8fe1bee1ed4c76944d707bd256876 for pr-140558 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdezzare%2Frust_chat" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/dezzare/rust_chat on toolchain 3350c1eb3fd8fe1bee1ed4c76944d707bd256876 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/dezzare/rust_chat [INFO] finished tweaking git repo https://github.com/dezzare/rust_chat [INFO] tweaked toml for git repo https://github.com/dezzare/rust_chat written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/dezzare/rust_chat already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded async-process v1.3.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 267797ec6b1110e0e35fb8a4163b5b0d7718f8eaa11023b5af116ffaf9c640fe [INFO] running `Command { std: "docker" "start" "-a" "267797ec6b1110e0e35fb8a4163b5b0d7718f8eaa11023b5af116ffaf9c640fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "267797ec6b1110e0e35fb8a4163b5b0d7718f8eaa11023b5af116ffaf9c640fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "267797ec6b1110e0e35fb8a4163b5b0d7718f8eaa11023b5af116ffaf9c640fe", kill_on_drop: false }` [INFO] [stdout] 267797ec6b1110e0e35fb8a4163b5b0d7718f8eaa11023b5af116ffaf9c640fe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+3350c1eb3fd8fe1bee1ed4c76944d707bd256876" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2b78a41b35d783e618d65afcb96310dad69f6af3247a2d75d16aafa8847fc15f [INFO] running `Command { std: "docker" "start" "-a" "2b78a41b35d783e618d65afcb96310dad69f6af3247a2d75d16aafa8847fc15f", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.36 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.90 [INFO] [stderr] Compiling libc v0.2.121 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling futures-core v0.3.21 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking pin-project-lite v0.2.8 [INFO] [stderr] Compiling log v0.4.16 [INFO] [stderr] Checking cache-padded v1.2.0 [INFO] [stderr] Checking futures-io v0.3.21 [INFO] [stderr] Checking event-listener v2.5.2 [INFO] [stderr] Checking waker-fn v1.1.0 [INFO] [stderr] Checking parking v2.0.0 [INFO] [stderr] Checking fastrand v1.7.0 [INFO] [stderr] Checking concurrent-queue v1.2.2 [INFO] [stderr] Checking once_cell v1.10.0 [INFO] [stderr] Checking slab v0.4.5 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Checking async-task v4.2.0 [INFO] [stderr] Compiling signal-hook v0.3.13 [INFO] [stderr] Compiling crossbeam-utils v0.8.8 [INFO] [stderr] Checking atomic-waker v1.0.0 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Checking async-mutex v1.4.0 [INFO] [stderr] Compiling serde_json v1.0.79 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking async-lock v2.5.0 [INFO] [stderr] Checking itoa v1.0.1 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking ryu v1.0.9 [INFO] [stderr] Checking async-channel v1.6.1 [INFO] [stderr] Compiling value-bag v1.0.0-alpha.8 [INFO] [stderr] Checking tokio v1.17.0 [INFO] [stderr] Checking futures-lite v1.12.0 [INFO] [stderr] Compiling quote v1.0.17 [INFO] [stderr] Checking socket2 v0.4.4 [INFO] [stderr] Checking signal-hook-registry v1.4.0 [INFO] [stderr] Checking num_cpus v1.13.1 [INFO] [stderr] Checking blocking v1.2.0 [INFO] [stderr] Checking async-executor v1.4.1 [INFO] [stderr] Compiling ctor v0.1.22 [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:72:21 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 72 | usize: (USIZE, OPTION_USIZE), [INFO] [stdout] | ^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:72:28 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 72 | usize: (USIZE, OPTION_USIZE), [INFO] [stdout] | ^^^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:73:18 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 73 | u8: (U8, OPTION_U8), [INFO] [stdout] | ^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:73:22 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 73 | u8: (U8, OPTION_U8), [INFO] [stdout] | ^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:74:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 74 | u16: (U16, OPTION_U16), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:74:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 74 | u16: (U16, OPTION_U16), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:75:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 75 | u32: (U32, OPTION_U32), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:75:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 75 | u32: (U32, OPTION_U32), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:76:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 76 | u64: (U64, OPTION_U64), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:76:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 76 | u64: (U64, OPTION_U64), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:77:20 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 77 | u128: (U128, OPTION_U128), [INFO] [stdout] | ^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:77:26 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 77 | u128: (U128, OPTION_U128), [INFO] [stdout] | ^^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:79:21 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 79 | isize: (ISIZE, OPTION_ISIZE), [INFO] [stdout] | ^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:79:28 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 79 | isize: (ISIZE, OPTION_ISIZE), [INFO] [stdout] | ^^^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:80:18 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 80 | i8: (I8, OPTION_I8), [INFO] [stdout] | ^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:80:22 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 80 | i8: (I8, OPTION_I8), [INFO] [stdout] | ^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 81 | i16: (I16, OPTION_I16), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:81:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 81 | i16: (I16, OPTION_I16), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:82:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 82 | i32: (I32, OPTION_I32), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:82:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 82 | i32: (I32, OPTION_I32), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 83 | i64: (I64, OPTION_I64), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:83:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 83 | i64: (I64, OPTION_I64), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:84:20 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 84 | i128: (I128, OPTION_I128), [INFO] [stdout] | ^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 84 | i128: (I128, OPTION_I128), [INFO] [stdout] | ^^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:86:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 86 | f32: (F32, OPTION_F32), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:86:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 86 | f32: (F32, OPTION_F32), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:87:19 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 87 | f64: (F64, OPTION_F64), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:87:24 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 87 | f64: (F64, OPTION_F64), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:89:20 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 89 | char: (CHAR, OPTION_CHAR), [INFO] [stdout] | ^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:89:26 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 89 | char: (CHAR, OPTION_CHAR), [INFO] [stdout] | ^^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:90:20 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 90 | bool: (BOOL, OPTION_BOOL), [INFO] [stdout] | ^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:90:26 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 90 | bool: (BOOL, OPTION_BOOL), [INFO] [stdout] | ^^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:92:28 [INFO] [stdout] | [INFO] [stdout] 32 | const $const_ident: TypeId = TypeId::of::<$ty>(); [INFO] [stdout] | -------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 92 | &'static str: (STATIC_STR, OPTION_STATIC_STR), [INFO] [stdout] | ^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:92:40 [INFO] [stdout] | [INFO] [stdout] 35 | const $option_ident: TypeId = TypeId::of::>(); [INFO] [stdout] | --------------------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 92 | &'static str: (STATIC_STR, OPTION_STATIC_STR), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ constant of non-structural type [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: constant of non-structural type `TypeId` in a pattern [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/value-bag-1.0.0-alpha.8/src/internal/cast/primitive.rs:55:29 [INFO] [stdout] | [INFO] [stdout] 38 | const STR: TypeId = TypeId::of::(); [INFO] [stdout] | ----------------- constant defined here [INFO] [stdout] ... [INFO] [stdout] 55 | STR => |v| Some(Primitive::from(unsafe { &**(v as *const &'a Self as *const &'a str) })), [INFO] [stdout] | ^^^ constant of non-structural type [INFO] [stdout] ... [INFO] [stdout] 71 | / to_primitive![ [INFO] [stdout] 72 | | usize: (USIZE, OPTION_USIZE), [INFO] [stdout] 73 | | u8: (U8, OPTION_U8), [INFO] [stdout] 74 | | u16: (U16, OPTION_U16), [INFO] [stdout] ... | [INFO] [stdout] 96 | | String: (STRING, OPTION_STRING), [INFO] [stdout] 97 | | ]; [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] --> /rustc/3350c1eb3fd8fe1bee1ed4c76944d707bd256876/library/core/src/any.rs:710:1 [INFO] [stdout] | [INFO] [stdout] = note: `TypeId` must be annotated with `#[derive(PartialEq)]` to be usable in patterns [INFO] [stdout] | [INFO] [stdout] = note: see https://doc.rust-lang.org/stable/std/marker/trait.StructuralPartialEq.html for details [INFO] [stdout] = note: this error originates in the macro `to_primitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `value-bag` (lib) due to 35 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "2b78a41b35d783e618d65afcb96310dad69f6af3247a2d75d16aafa8847fc15f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2b78a41b35d783e618d65afcb96310dad69f6af3247a2d75d16aafa8847fc15f", kill_on_drop: false }` [INFO] [stdout] 2b78a41b35d783e618d65afcb96310dad69f6af3247a2d75d16aafa8847fc15f