[INFO] cloning repository https://github.com/C-Saunders/google_analytics_v4_report_flattener [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/C-Saunders/google_analytics_v4_report_flattener" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FC-Saunders%2Fgoogle_analytics_v4_report_flattener", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FC-Saunders%2Fgoogle_analytics_v4_report_flattener'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fee7b927b5826366ce02798af9a285033386fa22 [INFO] testing C-Saunders/google_analytics_v4_report_flattener against beta-2022-02-22 for beta-1.60-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FC-Saunders%2Fgoogle_analytics_v4_report_flattener" "/workspace/builds/worker-3/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/C-Saunders/google_analytics_v4_report_flattener on toolchain beta-2022-02-22 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/C-Saunders/google_analytics_v4_report_flattener [INFO] finished tweaking git repo https://github.com/C-Saunders/google_analytics_v4_report_flattener [INFO] tweaked toml for git repo https://github.com/C-Saunders/google_analytics_v4_report_flattener written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/C-Saunders/google_analytics_v4_report_flattener already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded itertools v0.7.8 [INFO] [stderr] Downloaded csv-core v0.1.4 [INFO] [stderr] Downloaded quote v0.6.5 [INFO] [stderr] Downloaded csv v1.0.1 [INFO] [stderr] Downloaded itertools-num v0.1.2 [INFO] [stderr] Downloaded unindent v0.1.3 [INFO] [stderr] Downloaded indoc-impl v0.2.6 [INFO] [stderr] Downloaded cc v1.0.22 [INFO] [stderr] Downloaded serde_derive v1.0.71 [INFO] [stderr] Downloaded indoc v0.2.6 [INFO] [stderr] Downloaded serde v1.0.71 [INFO] [stderr] Downloaded simplelog v0.5.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] be3d612d2ead5013928a8134f0127ac72b1630bfcf0fe60968797f8357e8c2cd [INFO] running `Command { std: "docker" "start" "-a" "be3d612d2ead5013928a8134f0127ac72b1630bfcf0fe60968797f8357e8c2cd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "be3d612d2ead5013928a8134f0127ac72b1630bfcf0fe60968797f8357e8c2cd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "be3d612d2ead5013928a8134f0127ac72b1630bfcf0fe60968797f8357e8c2cd", kill_on_drop: false }` [INFO] [stdout] be3d612d2ead5013928a8134f0127ac72b1630bfcf0fe60968797f8357e8c2cd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cb219c0bbcd7a9a8571ded55d0858fc64d9dbd4858277192392f8f80b08284d1 [INFO] running `Command { std: "docker" "start" "-a" "cb219c0bbcd7a9a8571ded55d0858fc64d9dbd4858277192392f8f80b08284d1", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling serde v1.0.71 [INFO] [stderr] Compiling either v1.5.0 [INFO] [stderr] Compiling dtoa v0.4.3 [INFO] [stderr] Compiling itoa v0.4.2 [INFO] [stderr] Compiling proc-macro2 v0.4.9 [INFO] [stderr] Compiling itertools v0.7.8 [INFO] [stderr] Compiling quote v0.6.5 [INFO] [stderr] Compiling syn v0.14.7 [INFO] [stderr] Compiling serde_json v1.0.24 [INFO] [stderr] Compiling serde_derive v1.0.71 [INFO] [stderr] Compiling ga-v4-flattener v0.4.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 13.19s [INFO] running `Command { std: "docker" "inspect" "cb219c0bbcd7a9a8571ded55d0858fc64d9dbd4858277192392f8f80b08284d1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cb219c0bbcd7a9a8571ded55d0858fc64d9dbd4858277192392f8f80b08284d1", kill_on_drop: false }` [INFO] [stdout] cb219c0bbcd7a9a8571ded55d0858fc64d9dbd4858277192392f8f80b08284d1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ef0142efceb95c68506de810ff87305db375c85b3b5660a6fd458fc6d4f2e93e [INFO] running `Command { std: "docker" "start" "-a" "ef0142efceb95c68506de810ff87305db375c85b3b5660a6fd458fc6d4f2e93e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.43 [INFO] [stderr] Compiling num-traits v0.2.5 [INFO] [stderr] Compiling version_check v0.1.4 [INFO] [stderr] Compiling cfg-if v0.1.5 [INFO] [stderr] Compiling cc v1.0.22 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling ucd-util v0.1.1 [INFO] [stderr] Compiling regex v1.0.4 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Compiling byteorder v1.2.6 [INFO] [stderr] Compiling failure_derive v0.1.2 [INFO] [stderr] Compiling pest v1.0.6 [INFO] [stderr] Compiling rustc-demangle v0.1.9 [INFO] [stderr] Compiling cast v0.2.2 [INFO] [stderr] Compiling utf8-ranges v1.0.1 [INFO] [stderr] Compiling proc-macro-hack-impl v0.4.0 [INFO] [stderr] Compiling unicode-width v0.1.5 [INFO] [stderr] Compiling bitflags v1.0.4 [INFO] [stderr] Compiling strsim v0.7.0 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling thread-scoped v1.0.2 [INFO] [stderr] Compiling quick-error v1.2.2 [INFO] [stderr] Compiling same-file v1.0.3 [INFO] [stderr] Compiling unindent v0.1.3 [INFO] [stderr] Compiling synstructure v0.9.0 [INFO] [stderr] Compiling log v0.4.4 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Compiling regex-syntax v0.6.2 [INFO] [stderr] Compiling textwrap v0.10.0 [INFO] [stderr] Compiling walkdir v2.2.5 [INFO] [stderr] Compiling term v0.5.1 [INFO] [stderr] Compiling criterion-plot v0.2.5 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Compiling memchr v2.0.2 [INFO] [stderr] Compiling time v0.1.40 [INFO] [stderr] Compiling rand v0.4.3 [INFO] [stderr] Compiling atty v0.2.11 [INFO] [stderr] Compiling num_cpus v1.8.0 [INFO] [stderr] Compiling lazy_static v1.1.0 [INFO] [stderr] Compiling proc-macro-hack v0.4.0 [INFO] [stderr] Compiling aho-corasick v0.6.8 [INFO] [stderr] Compiling csv-core v0.1.4 [INFO] [stderr] Compiling clap v2.32.0 [INFO] [stderr] Compiling indoc-impl v0.2.6 [INFO] [stderr] Compiling csv v1.0.1 [INFO] [stderr] Compiling backtrace-sys v0.1.24 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling itertools-num v0.1.2 [INFO] [stderr] Compiling criterion-stats v0.2.5 [INFO] [stderr] Compiling indoc v0.2.6 [INFO] [stderr] Compiling chrono v0.4.6 [INFO] [stderr] Compiling pest_derive v1.0.8 [INFO] [stderr] Compiling backtrace v0.3.9 [INFO] [stderr] Compiling failure v0.1.2 [INFO] [stderr] Compiling simplelog v0.5.2 [INFO] [stderr] Compiling handlebars v0.32.4 [INFO] [stderr] Compiling criterion v0.2.5 [INFO] [stderr] Compiling ga-v4-flattener v0.4.0 (/opt/rustwide/workdir) [INFO] [stdout] error: proc-macro derive panicked [INFO] [stdout] --> src/to_delimited.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | / indoc!( [INFO] [stdout] 106 | | r#""ga:deviceCategory"|delimiter|"ga:sessions" [INFO] [stdout] 107 | | "desktop"|delimiter|43 [INFO] [stdout] 108 | | "mobile"|delimiter|1 [INFO] [stdout] 109 | | "# [INFO] [stdout] 110 | | ) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: message: assertion failed: source.starts_with(prefix) [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: proc-macro derive panicked [INFO] [stdout] --> src/to_delimited.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | / indoc!( [INFO] [stdout] 128 | | r#""ga:deviceCategory","ga:country","ga:sessions","ga:bounces" [INFO] [stdout] 129 | | "desktop","Australia",1,1 [INFO] [stdout] 130 | | "desktop","France",39,21 [INFO] [stdout] ... | [INFO] [stdout] 133 | | "# [INFO] [stdout] 134 | | ) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: message: assertion failed: source.starts_with(prefix) [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: proc-macro derive panicked [INFO] [stdout] --> src/to_delimited.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | / indoc!( [INFO] [stdout] 164 | | r#""ga:deviceCategory","ga:sessions","ga:bounces" [INFO] [stdout] 165 | | "desktop",25,17 [INFO] [stdout] 166 | | "mobile",2,2 [INFO] [stdout] 167 | | "# [INFO] [stdout] 168 | | ) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: message: assertion failed: source.starts_with(prefix) [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: proc-macro derive panicked [INFO] [stdout] --> src/to_delimited.rs:170:17 [INFO] [stdout] | [INFO] [stdout] 170 | / indoc!( [INFO] [stdout] 171 | | r#""ga:country","ga:sessions","ga:bounces" [INFO] [stdout] 172 | | "Azerbaijan",1,0 [INFO] [stdout] 173 | | "France",18,11 [INFO] [stdout] ... | [INFO] [stdout] 177 | | "# [INFO] [stdout] 178 | | ) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: message: assertion failed: source.starts_with(prefix) [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: proc-macro derive panicked [INFO] [stdout] --> src/to_delimited.rs:196:17 [INFO] [stdout] | [INFO] [stdout] 196 | / indoc!( [INFO] [stdout] 197 | | r#""ga:browser","ga:avgTimeOnPage","ga:pageviewsPerSession","ga:avgTimeOnPage_2","ga:pageviewsPerSession_2" [INFO] [stdout] 198 | | "Chrome",108.1733,2.93126,129.7071651,3.60975609 [INFO] [stdout] 199 | | "Edge",51.794117,6.6666667,210.866667,2.875 [INFO] [stdout] 200 | | "Firefox",123.657142,2.09375,75.333333,1.5 [INFO] [stdout] 201 | | "# [INFO] [stdout] 202 | | ).to_string(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: message: assertion failed: source.starts_with(prefix) [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: proc-macro derive panicked [INFO] [stdout] --> src/to_delimited.rs:218:18 [INFO] [stdout] | [INFO] [stdout] 218 | vec![indoc!( [INFO] [stdout] | __________________^ [INFO] [stdout] 219 | | r#""ga:browser","ga:segment","ga:sessions" [INFO] [stdout] 220 | | "Android Webview","Returning Users",1 [INFO] [stdout] 221 | | "Chrome","Returning Users",62 [INFO] [stdout] ... | [INFO] [stdout] 226 | | "# [INFO] [stdout] 227 | | ) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: message: assertion failed: source.starts_with(prefix) [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `proc_macro_call` in this scope [INFO] [stdout] --> src/to_delimited.rs:218:18 [INFO] [stdout] | [INFO] [stdout] 218 | vec![indoc!( [INFO] [stdout] | __________________^ [INFO] [stdout] 219 | | r#""ga:browser","ga:segment","ga:sessions" [INFO] [stdout] 220 | | "Android Webview","Returning Users",1 [INFO] [stdout] 221 | | "Chrome","Returning Users",62 [INFO] [stdout] ... | [INFO] [stdout] 226 | | "# [INFO] [stdout] 227 | | ) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `proc_macro_call` in this scope [INFO] [stdout] --> src/to_delimited.rs:196:17 [INFO] [stdout] | [INFO] [stdout] 196 | / indoc!( [INFO] [stdout] 197 | | r#""ga:browser","ga:avgTimeOnPage","ga:pageviewsPerSession","ga:avgTimeOnPage_2","ga:pageviewsPerSession_2" [INFO] [stdout] 198 | | "Chrome",108.1733,2.93126,129.7071651,3.60975609 [INFO] [stdout] 199 | | "Edge",51.794117,6.6666667,210.866667,2.875 [INFO] [stdout] 200 | | "Firefox",123.657142,2.09375,75.333333,1.5 [INFO] [stdout] 201 | | "# [INFO] [stdout] 202 | | ).to_string(), [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `proc_macro_call` in this scope [INFO] [stdout] --> src/to_delimited.rs:170:17 [INFO] [stdout] | [INFO] [stdout] 170 | / indoc!( [INFO] [stdout] 171 | | r#""ga:country","ga:sessions","ga:bounces" [INFO] [stdout] 172 | | "Azerbaijan",1,0 [INFO] [stdout] 173 | | "France",18,11 [INFO] [stdout] ... | [INFO] [stdout] 177 | | "# [INFO] [stdout] 178 | | ) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `proc_macro_call` in this scope [INFO] [stdout] --> src/to_delimited.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | / indoc!( [INFO] [stdout] 164 | | r#""ga:deviceCategory","ga:sessions","ga:bounces" [INFO] [stdout] 165 | | "desktop",25,17 [INFO] [stdout] 166 | | "mobile",2,2 [INFO] [stdout] 167 | | "# [INFO] [stdout] 168 | | ) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `proc_macro_call` in this scope [INFO] [stdout] --> src/to_delimited.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | / indoc!( [INFO] [stdout] 128 | | r#""ga:deviceCategory","ga:country","ga:sessions","ga:bounces" [INFO] [stdout] 129 | | "desktop","Australia",1,1 [INFO] [stdout] 130 | | "desktop","France",39,21 [INFO] [stdout] ... | [INFO] [stdout] 133 | | "# [INFO] [stdout] 134 | | ) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `proc_macro_call` in this scope [INFO] [stdout] --> src/to_delimited.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | / indoc!( [INFO] [stdout] 106 | | r#""ga:deviceCategory"|delimiter|"ga:sessions" [INFO] [stdout] 107 | | "desktop"|delimiter|43 [INFO] [stdout] 108 | | "mobile"|delimiter|1 [INFO] [stdout] 109 | | "# [INFO] [stdout] 110 | | ) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `indoc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 12 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ga-v4-flattener` due to 13 previous errors [INFO] running `Command { std: "docker" "inspect" "ef0142efceb95c68506de810ff87305db375c85b3b5660a6fd458fc6d4f2e93e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef0142efceb95c68506de810ff87305db375c85b3b5660a6fd458fc6d4f2e93e", kill_on_drop: false }` [INFO] [stdout] ef0142efceb95c68506de810ff87305db375c85b3b5660a6fd458fc6d4f2e93e