[INFO] fetching crate glaredb_ext_parquet 25.6.3... [INFO] testing glaredb_ext_parquet-25.6.3 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate glaredb_ext_parquet 25.6.3 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate glaredb_ext_parquet 25.6.3 [INFO] finished tweaking crates.io crate glaredb_ext_parquet 25.6.3 [INFO] tweaked toml for crates.io crate glaredb_ext_parquet 25.6.3 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate glaredb_ext_parquet 25.6.3 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate glaredb_ext_parquet 25.6.3 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded glaredb_error v25.6.3 [INFO] [stderr] Downloaded prost-types v0.14.0 [INFO] [stderr] Downloaded prost-derive v0.14.0 [INFO] [stderr] Downloaded glaredb_parser v25.6.3 [INFO] [stderr] Downloaded prost-build v0.14.0 [INFO] [stderr] Downloaded prost v0.14.0 [INFO] [stderr] Downloaded sdd v3.0.2 [INFO] [stderr] Downloaded glaredb_proto v25.6.3 [INFO] [stderr] Downloaded glaredb_core v25.6.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ffeaa82dc7b12f6b4b94caa3b44921a3f3ea3260ce5c29e22ab41d2eebc223d0 [INFO] running `Command { std: "docker" "start" "-a" "ffeaa82dc7b12f6b4b94caa3b44921a3f3ea3260ce5c29e22ab41d2eebc223d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ffeaa82dc7b12f6b4b94caa3b44921a3f3ea3260ce5c29e22ab41d2eebc223d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ffeaa82dc7b12f6b4b94caa3b44921a3f3ea3260ce5c29e22ab41d2eebc223d0", kill_on_drop: false }` [INFO] [stdout] ffeaa82dc7b12f6b4b94caa3b44921a3f3ea3260ce5c29e22ab41d2eebc223d0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fb31f82efe93ff0366f61d05eec0cda4473663e1df0d9612fa516f07948a5fb2 [INFO] running `Command { std: "docker" "start" "-a" "fb31f82efe93ff0366f61d05eec0cda4473663e1df0d9612fa516f07948a5fb2", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling anyhow v1.0.86 [INFO] [stderr] Compiling either v1.10.0 [INFO] [stderr] Compiling rustix v1.0.2 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling linux-raw-sys v0.9.3 [INFO] [stderr] Compiling bytes v1.10.0 [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling prettyplease v0.2.17 [INFO] [stderr] Compiling regex-syntax v0.8.2 [INFO] [stderr] Compiling litemap v0.7.3 [INFO] [stderr] Compiling writeable v0.5.5 [INFO] [stderr] Compiling indexmap v2.9.0 [INFO] [stderr] Compiling once_cell v1.20.3 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling icu_locid_transform_data v1.5.0 [INFO] [stderr] Compiling smallvec v1.14.0 [INFO] [stderr] Compiling multimap v0.10.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling futures-sink v0.3.30 [INFO] [stderr] Compiling futures-core v0.3.30 [INFO] [stderr] Compiling icu_properties_data v1.5.0 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling aho-corasick v1.1.2 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling icu_normalizer_data v1.5.0 [INFO] [stderr] Compiling write16 v1.0.0 [INFO] [stderr] Compiling utf16_iter v1.0.5 [INFO] [stderr] Compiling tracing-core v0.1.32 [INFO] [stderr] Compiling alloc-no-stdlib v2.0.4 [INFO] [stderr] Compiling glaredb_error v25.6.3 [INFO] [stderr] Compiling zstd-safe v7.0.0 [INFO] [stderr] Compiling jobserver v0.1.31 [INFO] [stderr] Compiling cc v1.2.22 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling crossbeam-deque v0.8.5 [INFO] [stderr] Compiling uuid v1.17.0 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling tracing v0.1.40 [INFO] [stderr] Compiling syn v2.0.89 [INFO] [stderr] Compiling regex-automata v0.4.5 [INFO] [stderr] Compiling alloc-stdlib v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling bstr v1.12.0 [INFO] [stderr] Compiling zlib-rs v0.5.1 [INFO] [stderr] Compiling allocator-api2 v0.2.16 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling iana-time-zone v0.1.60 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Compiling tempfile v3.20.0 [INFO] [stderr] Compiling snap v1.1.1 [INFO] [stderr] Compiling sdd v3.0.2 [INFO] [stderr] Compiling textwrap v0.16.1 [INFO] [stderr] Compiling twox-hash v1.6.3 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling scc v2.3.4 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling ordered-float v2.10.1 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling rand v0.9.1 [INFO] [stderr] Compiling brotli-decompressor v5.0.0 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling zstd-sys v2.0.15+zstd.1.5.7 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling tokio v1.45.1 [INFO] [stderr] Compiling integer-encoding v3.0.4 [INFO] [stderr] Compiling regex v1.10.5 [INFO] [stderr] Compiling md5 v0.7.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling thrift v0.17.0 [INFO] [stderr] Compiling num v0.4.3 [INFO] [stderr] Compiling brotli v8.0.1 [INFO] [stderr] Compiling lz4_flex v0.11.3 [INFO] [stderr] Compiling twox-hash v2.1.1 [INFO] [stderr] Compiling seq-macro v0.3.5 [INFO] [stderr] Compiling globset v0.4.16 [INFO] [stderr] Compiling synstructure v0.13.1 [INFO] [stderr] Compiling libz-rs-sys v0.5.1 [INFO] [stderr] Compiling flate2 v1.1.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.4 [INFO] [stderr] Compiling yoke-derive v0.7.4 [INFO] [stderr] Compiling zerovec-derive v0.10.2 [INFO] [stderr] Compiling displaydoc v0.2.4 [INFO] [stderr] Compiling prost-derive v0.14.0 [INFO] [stderr] Compiling icu_provider_macros v1.5.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling zerofrom v0.1.4 [INFO] [stderr] Compiling yoke v0.7.4 [INFO] [stderr] Compiling zerovec v0.10.2 [INFO] [stderr] Compiling prost v0.14.0 [INFO] [stderr] Compiling prost-types v0.14.0 [INFO] [stderr] Compiling tinystr v0.7.6 [INFO] [stderr] Compiling icu_collections v1.5.0 [INFO] [stderr] Compiling icu_locid v1.5.0 [INFO] [stderr] Compiling prost-build v0.14.0 [INFO] [stderr] Compiling icu_provider v1.5.0 [INFO] [stderr] Compiling zstd v0.13.0 [INFO] [stderr] Compiling icu_locid_transform v1.5.0 [INFO] [stderr] Compiling futures-executor v0.3.30 [INFO] [stderr] Compiling futures v0.3.30 [INFO] [stderr] Compiling glaredb_proto v25.6.3 [INFO] [stderr] Compiling icu_properties v1.5.0 [INFO] [stderr] Compiling half v2.6.0 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling glaredb_parser v25.6.3 [INFO] [stderr] Compiling icu_normalizer v1.5.0 [INFO] [stderr] Compiling idna v1.0.0 [INFO] [stderr] Compiling url v2.5.1 [INFO] [stderr] Compiling glaredb_core v25.6.3 [INFO] [stderr] Compiling glaredb_ext_parquet v25.6.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: method `compress` is never used [INFO] [stdout] --> src/compression.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub trait Codec: Debug + Sync + Send { [INFO] [stdout] | ----- method in this trait [INFO] [stdout] ... [INFO] [stdout] 36 | fn compress(&mut self, input_buf: &[u8], output_buf: &mut Vec) -> Result<()>; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `encoder` is never read [INFO] [stdout] --> src/compression.rs:128:9 [INFO] [stdout] | [INFO] [stdout] 127 | pub struct SnappyCodec { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 128 | encoder: Encoder, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SnappyCodec` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `level` is never read [INFO] [stdout] --> src/compression.rs:176:9 [INFO] [stdout] | [INFO] [stdout] 175 | pub struct GZipCodec { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 176 | level: GzipLevel, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GZipCodec` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BROTLI_DEFAULT_BUFFER_SIZE` is never used [INFO] [stdout] --> src/compression.rs:241:11 [INFO] [stdout] | [INFO] [stdout] 241 | const BROTLI_DEFAULT_BUFFER_SIZE: usize = 4096; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BROTLI_DEFAULT_LG_WINDOW_SIZE` is never used [INFO] [stdout] --> src/compression.rs:242:11 [INFO] [stdout] | [INFO] [stdout] 242 | const BROTLI_DEFAULT_LG_WINDOW_SIZE: u32 = 22; // recommended between 20-22 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `level` is never read [INFO] [stdout] --> src/compression.rs:247:9 [INFO] [stdout] | [INFO] [stdout] 246 | pub struct BrotliCodec { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 247 | level: BrotliLevel, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BrotliCodec` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LZ4_BUFFER_SIZE` is never used [INFO] [stdout] --> src/compression.rs:314:11 [INFO] [stdout] | [INFO] [stdout] 314 | const LZ4_BUFFER_SIZE: usize = 4096; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `level` is never read [INFO] [stdout] --> src/compression.rs:366:9 [INFO] [stdout] | [INFO] [stdout] 365 | pub struct ZSTDCodec { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 366 | level: ZstdLevel, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ZSTDCodec` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/schema/types.rs:78:41 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn primitive_type_builder(name: &str, physical_type: PhysicalType) -> PrimitiveTypeBuilder { [INFO] [stdout] | ^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 78 | pub fn primitive_type_builder(name: &str, physical_type: PhysicalType) -> PrimitiveTypeBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/schema/types.rs:83:37 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn group_type_builder(name: &str) -> GroupTypeBuilder { [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 83 | pub fn group_type_builder(name: &str) -> GroupTypeBuilder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `glaredb_core` (lib) [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/bin/rustc --crate-name glaredb_core --edition=2024 /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glaredb_core-25.6.3/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 '--warn=clippy::literal_string_with_formatting_args' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=20561d588fe47e1d -C extra-filename=-81eee80d29945b79 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern ahash=/opt/rustwide/target/debug/deps/libahash-8c55999fc2dc18b2.rmeta --extern chrono=/opt/rustwide/target/debug/deps/libchrono-4813128b4f35acd2.rmeta --extern futures=/opt/rustwide/target/debug/deps/libfutures-dba945c02cc6a718.rmeta --extern glaredb_error=/opt/rustwide/target/debug/deps/libglaredb_error-9a515cedf067194b.rmeta --extern glaredb_parser=/opt/rustwide/target/debug/deps/libglaredb_parser-44ce4c8fb062308b.rmeta --extern glaredb_proto=/opt/rustwide/target/debug/deps/libglaredb_proto-21d8958d5524b020.rmeta --extern globset=/opt/rustwide/target/debug/deps/libglobset-448e7aea880efc97.rmeta --extern half=/opt/rustwide/target/debug/deps/libhalf-a1aa3de36aa6f653.rmeta --extern hashbrown=/opt/rustwide/target/debug/deps/libhashbrown-928799d2548d0743.rmeta --extern indexmap=/opt/rustwide/target/debug/deps/libindexmap-3d1443b4e68ae7e0.rmeta --extern md5=/opt/rustwide/target/debug/deps/libmd5-8b7359041afc81b3.rmeta --extern num_traits=/opt/rustwide/target/debug/deps/libnum_traits-fcd04ab5f889ef8c.rmeta --extern num_cpus=/opt/rustwide/target/debug/deps/libnum_cpus-2e359938289187a4.rmeta --extern parking_lot=/opt/rustwide/target/debug/deps/libparking_lot-3f9ee0b940a59c4a.rmeta --extern rand=/opt/rustwide/target/debug/deps/librand-690e5ad2f7eebf1d.rmeta --extern rayon=/opt/rustwide/target/debug/deps/librayon-0b70584419cbdaab.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-3068f6aae2706e98.rmeta --extern scc=/opt/rustwide/target/debug/deps/libscc-f655076c3cc7810e.rmeta --extern serde=/opt/rustwide/target/debug/deps/libserde-41427907a61f4e92.rmeta --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-fae1cf1aa1ac9574.rmeta --extern strsim=/opt/rustwide/target/debug/deps/libstrsim-24acdad2526b95b7.rmeta --extern textwrap=/opt/rustwide/target/debug/deps/libtextwrap-7611edcf9d1ee27b.rmeta --extern tokio=/opt/rustwide/target/debug/deps/libtokio-8e2033f8fde97bf6.rmeta --extern tracing=/opt/rustwide/target/debug/deps/libtracing-7941190f8372d01f.rmeta --extern url=/opt/rustwide/target/debug/deps/liburl-7e399c35d2303447.rmeta --extern uuid=/opt/rustwide/target/debug/deps/libuuid-9c8c6a19ee8a3b24.rmeta --cap-lints allow --cap-lints=forbid` (signal: 9, SIGKILL: kill) [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "fb31f82efe93ff0366f61d05eec0cda4473663e1df0d9612fa516f07948a5fb2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fb31f82efe93ff0366f61d05eec0cda4473663e1df0d9612fa516f07948a5fb2", kill_on_drop: false }` [INFO] [stdout] fb31f82efe93ff0366f61d05eec0cda4473663e1df0d9612fa516f07948a5fb2