[INFO] fetching crate tauri-plugin-ble 0.1.2...
[INFO] checking tauri-plugin-ble-0.1.2 against master#f5e2df741b4a9820a7579f0c8eccc951706a8782 for pr-147995
[INFO] extracting crate tauri-plugin-ble 0.1.2 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate tauri-plugin-ble 0.1.2
[INFO] finished tweaking crates.io crate tauri-plugin-ble 0.1.2
[INFO] tweaked toml for crates.io crate tauri-plugin-ble 0.1.2 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate tauri-plugin-ble 0.1.2 on toolchain f5e2df741b4a9820a7579f0c8eccc951706a8782
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tauri-plugin-ble 0.1.2 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" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dlopen2_derive v0.4.0
[INFO] [stderr]   Downloaded serialize-to-javascript-impl v0.1.1
[INFO] [stderr]   Downloaded tauri-runtime-wry v2.7.1
[INFO] [stderr]   Downloaded tauri-plugin v2.3.0
[INFO] [stderr]   Downloaded tauri-runtime v2.7.0
[INFO] [stderr]   Downloaded serialize-to-javascript v0.1.1
[INFO] [stderr]   Downloaded tauri-codegen v2.3.0
[INFO] [stderr]   Downloaded dlopen2 v0.7.0
[INFO] [stderr]   Downloaded tauri-macros v2.3.1
[INFO] [stderr]   Downloaded br-ble v0.2.0
[INFO] [stderr]   Downloaded tauri-build v2.3.0
[INFO] [stderr]   Downloaded tray-icon v0.21.0
[INFO] [stderr]   Downloaded muda v0.17.0
[INFO] [stderr]   Downloaded tauri-utils v2.5.0
[INFO] [stderr]   Downloaded wry v0.52.1
[INFO] [stderr]   Downloaded tauri v2.6.2
[INFO] [stderr]   Downloaded tao v0.34.0
[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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 491166bcbca3534a8b6a6d3c1b6f65a7bda5b31beb61aebf1bfacbcec2ff7300
[INFO] running `Command { std: "docker" "start" "-a" "491166bcbca3534a8b6a6d3c1b6f65a7bda5b31beb61aebf1bfacbcec2ff7300", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "491166bcbca3534a8b6a6d3c1b6f65a7bda5b31beb61aebf1bfacbcec2ff7300", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "491166bcbca3534a8b6a6d3c1b6f65a7bda5b31beb61aebf1bfacbcec2ff7300", kill_on_drop: false }`
[INFO] [stdout] 491166bcbca3534a8b6a6d3c1b6f65a7bda5b31beb61aebf1bfacbcec2ff7300
[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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 58b2f229fd4ab1b42ac2784602d60a407bad792e637ce93e647e936e57af62bb
[INFO] running `Command { std: "docker" "start" "-a" "58b2f229fd4ab1b42ac2784602d60a407bad792e637ce93e647e936e57af62bb", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling toml_write v0.1.1
[INFO] [stderr]    Compiling target-lexicon v0.12.16
[INFO] [stderr]    Compiling version-compare v0.2.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling indexmap v2.9.0
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling typeid v1.0.3
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling phf_shared v0.8.0
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling gio v0.18.4
[INFO] [stderr]    Compiling mac v0.1.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling futf v0.1.5
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling dtoa v1.0.10
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling tendril v0.4.3
[INFO] [stderr]    Compiling matches v0.1.10
[INFO] [stderr]    Compiling unic-common v0.9.0
[INFO] [stderr]    Compiling dtoa-short v0.3.5
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling unic-char-range v0.9.0
[INFO] [stderr]    Compiling nodrop v0.1.14
[INFO] [stderr]    Compiling camino v1.1.9
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling unic-ucd-version v0.9.0
[INFO] [stderr]    Compiling rand_pcg v0.2.1
[INFO] [stderr]    Compiling unic-char-property v0.9.0
[INFO] [stderr]    Compiling servo_arc v0.2.0
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling phf v0.8.0
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling schemars v0.8.22
[INFO] [stderr]    Compiling brotli-decompressor v5.0.0
[INFO] [stderr]    Compiling unic-ucd-ident v0.9.0
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling dyn-clone v1.0.19
[INFO] [stderr]    Compiling glob v0.3.2
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling gtk v0.18.2
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cfg-expr v0.15.8
[INFO] [stderr]    Compiling x11 v2.21.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling cc v1.2.19
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.8
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]    Compiling brotli v8.0.1
[INFO] [stderr]     Checking winnow v0.7.12
[INFO] [stderr]    Compiling flate2 v1.1.1
[INFO] [stderr]     Checking phf_shared v0.11.3
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]     Checking dunce v1.0.5
[INFO] [stderr]    Compiling wry v0.52.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling tauri-runtime v2.7.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling tauri-runtime-wry v2.7.1
[INFO] [stderr]     Checking json v0.12.4
[INFO] [stderr]     Checking heck v0.5.0
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling ico v0.4.0
[INFO] [stderr]    Compiling phf_generator v0.8.0
[INFO] [stderr]    Compiling phf_codegen v0.8.0
[INFO] [stderr]    Compiling selectors v0.24.0
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling markup5ever v0.14.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling cssparser v0.29.6
[INFO] [stderr]    Compiling phf_macros v0.10.0
[INFO] [stderr]    Compiling serialize-to-javascript-impl v0.1.1
[INFO] [stderr]    Compiling phf v0.10.1
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]    Compiling ctor v0.2.9
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling match_token v0.1.0
[INFO] [stderr]    Compiling derive_more v0.99.19
[INFO] [stderr]    Compiling dlopen2_derive v0.4.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]     Checking dlopen2 v0.7.0
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling schemars_derive v0.8.22
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.7.5
[INFO] [stderr]     Checking tokio v1.46.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling zerovec v0.10.4
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling serde_with_macros v3.12.0
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking toml_datetime v0.6.9
[INFO] [stderr]     Checking dpi v0.1.1
[INFO] [stderr]     Checking serde_spanned v0.6.8
[INFO] [stderr]     Checking erased-serde v0.4.6
[INFO] [stderr]     Checking serde_with v3.12.0
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[INFO] [stderr]     Checking keyboard-types v0.7.0
[INFO] [stderr]     Checking toml_edit v0.22.26
[INFO] [stderr]     Checking cfb v0.7.3
[INFO] [stderr]     Checking br-ble v0.2.0
[INFO] [stderr]     Checking serde-untagged v0.1.7
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]    Compiling string_cache v0.8.9
[INFO] [stderr]    Compiling cargo-platform v0.1.9
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking jsonptr v0.6.3
[INFO] [stderr]    Compiling toml_edit v0.20.7
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking json-patch v3.0.1
[INFO] [stderr]     Checking infer v0.19.0
[INFO] [stderr]     Checking urlpattern v0.3.0
[INFO] [stderr]    Compiling field-offset v0.3.6
[INFO] [stderr]     Checking serialize-to-javascript v0.1.1
[INFO] [stderr]    Compiling html5ever v0.29.1
[INFO] [stderr]    Compiling cargo_metadata v0.19.2
[INFO] [stderr]     Checking toml v0.8.22
[INFO] [stderr]     Checking tauri-utils v2.5.0
[INFO] [stderr]    Compiling kuchikiki v0.8.8-speedreader
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling proc-macro-crate v2.0.0
[INFO] [stderr]    Compiling glib-macros v0.18.5
[INFO] [stderr]    Compiling gtk3-macros v0.18.2
[INFO] [stderr]    Compiling system-deps v6.2.2
[INFO] [stderr]    Compiling embed-resource v3.0.2
[INFO] [stderr]    Compiling cargo_toml v0.22.1
[INFO] [stderr]    Compiling tauri-winres v0.3.0
[INFO] [stderr]    Compiling glib-sys v0.18.1
[INFO] [stderr]    Compiling gobject-sys v0.18.0
[INFO] [stderr]    Compiling gio-sys v0.18.1
[INFO] [stderr]    Compiling gdk-sys v0.18.2
[INFO] [stderr]    Compiling cairo-sys-rs v0.18.2
[INFO] [stderr]    Compiling gdk-pixbuf-sys v0.18.0
[INFO] [stderr]    Compiling pango-sys v0.18.0
[INFO] [stderr]    Compiling atk-sys v0.18.2
[INFO] [stderr]    Compiling gtk-sys v0.18.2
[INFO] [stderr]    Compiling soup3-sys v0.5.0
[INFO] [stderr]    Compiling javascriptcore-rs-sys v1.1.1
[INFO] [stderr]    Compiling webkit2gtk-sys v2.0.1
[INFO] [stderr]    Compiling gdkx11-sys v0.18.2
[INFO] [stderr]     Checking glib v0.18.5
[INFO] [stderr]     Checking gdkwayland-sys v0.18.2
[INFO] [stderr]     Checking cairo-rs v0.18.5
[INFO] [stderr]     Checking atk v0.18.2
[INFO] [stderr]     Checking javascriptcore-rs v1.1.2
[INFO] [stderr]    Compiling tauri-build v2.3.0
[INFO] [stderr]    Compiling tauri-codegen v2.3.0
[INFO] [stderr]    Compiling tauri-plugin v2.3.0
[INFO] [stderr]    Compiling tauri v2.6.2
[INFO] [stderr]    Compiling tauri-macros v2.3.1
[INFO] [stderr]    Compiling tauri-plugin-ble v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking gdk-pixbuf v0.18.5
[INFO] [stderr]     Checking pango v0.18.3
[INFO] [stderr]     Checking soup3 v0.5.0
[INFO] [stderr]     Checking gdk v0.18.2
[INFO] [stderr]     Checking gdkx11 v0.18.2
[INFO] [stderr]     Checking webkit2gtk v2.0.1
[INFO] [stderr]     Checking tao v0.34.0
[INFO] [stderr]     Checking muda v0.17.0
[INFO] [stdout] warning: function `discover_list` is never used
[INFO] [stdout]   --> src/device/mod.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn discover_list() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect_device` is never used
[INFO] [stdout]    --> src/device/mod.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn connect_device(id: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `disconnected` is never used
[INFO] [stdout]    --> src/device/mod.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn disconnected(id: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `work_mode_device` is never used
[INFO] [stdout]    --> src/device/mod.rs:159:8
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub fn work_mode_device(id: String, work_mode: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_device_zero` is never used
[INFO] [stdout]    --> src/device/mod.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub fn set_device_zero(id: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `zero` is never read
[INFO] [stdout]    --> src/device/mod.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct Device {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub zero: bool,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Device` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Usb`, `File`, `Hid`, and `None` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:293:5
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub enum Types {
[INFO] [stdout]     |          ----- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 293 |     Usb,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 294 |     /// 文件解析设备
[INFO] [stdout] 295 |     File,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 296 |     /// 蓝牙HID设备
[INFO] [stdout] 297 |     Hid,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 298 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Types` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/device/mod.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl Types {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 311 |     fn from(name: &str) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `SpiritLevel`, `Gyroscope`, `Potentiometer`, `Instrument`, `ScanCode`, and `None` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:325:5
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub enum Mode {
[INFO] [stdout]     |          ---- variants in this enum
[INFO] [stdout] 324 |     /// 水平仪
[INFO] [stdout] 325 |     SpiritLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 326 |     /// 陀螺仪
[INFO] [stdout] 327 |     Gyroscope,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |     Potentiometer,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 332 |     /// 仪器
[INFO] [stdout] 333 |     Instrument,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 334 |     /// 扫码抢
[INFO] [stdout] 335 |     ScanCode,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 336 |     /// 未知
[INFO] [stdout] 337 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Mode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/device/mod.rs:352:8
[INFO] [stdout]     |
[INFO] [stdout] 340 | impl Mode {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 352 |     fn from(name: &str) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ConnectionState` is never used
[INFO] [stdout]    --> src/device/mod.rs:367:10
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub enum ConnectionState {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `str` is never used
[INFO] [stdout]    --> src/device/mod.rs:381:8
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl ConnectionState {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 381 |     fn str(&mut self) -> &'static str {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Dormancy`, `Abnormal`, `Disabled`, `ConnectionFailed`, and `Unconnected` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:397:5
[INFO] [stdout]     |
[INFO] [stdout] 395 | pub enum ErrState {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 396 |     /// 休眠
[INFO] [stdout] 397 |     Dormancy,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 398 |     /// 异常
[INFO] [stdout] 399 |     Abnormal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 400 |     /// 禁用
[INFO] [stdout] 401 |     Disabled,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 402 |     /// 连接失败
[INFO] [stdout] 403 |     ConnectionFailed,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 404 |     /// 断开连接
[INFO] [stdout] 405 |     Unconnected,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ErrState` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Data` is never constructed
[INFO] [stdout]    --> src/device/mod.rs:410:12
[INFO] [stdout]     |
[INFO] [stdout] 410 | pub struct Data {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `json` is never used
[INFO] [stdout]    --> src/device/mod.rs:460:12
[INFO] [stdout]     |
[INFO] [stdout] 459 | impl Data {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] 460 |     pub fn json(self) -> JsonValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ConnectFailed` and `Removed` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 480 | pub enum Status {
[INFO] [stdout]     |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 493 |     ConnectFailed,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 494 |     /// 移除
[INFO] [stdout] 495 |     Removed,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Status` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/device/mod.rs:513:12
[INFO] [stdout]     |
[INFO] [stdout] 499 | impl Status {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     pub fn from(name: &str) -> Status {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/device/ble/mod.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     LVH(Lvh),
[INFO] [stdout]    |     --- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BleModel` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 45 -     LVH(Lvh),
[INFO] [stdout] 45 +     LVH(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]  --> src/device/ble/lvh.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Lvh {
[INFO] [stdout]   |            --- field in this struct
[INFO] [stdout] 5 |     pub id: String,
[INFO] [stdout]   |         ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Lvh` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wt90` is never constructed
[INFO] [stdout]  --> src/device/ble/wt90.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Wt90 {}
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `a_xyz`, `w_xyz`, `angle_x`, `angle_y`, and `angle_z` are never used
[INFO] [stdout]   --> src/device/ble/wt90.rs:7:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl Wt90 {
[INFO] [stdout]    | --------- associated functions in this implementation
[INFO] [stdout]  6 |     /// 加速度
[INFO] [stdout]  7 |     pub fn a_xyz(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn w_xyz(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn angle_x(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn angle_y(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn angle_z(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `discover_list` is never used
[INFO] [stdout]   --> src/device/mod.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn discover_list() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect_device` is never used
[INFO] [stdout]    --> src/device/mod.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn connect_device(id: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `disconnected` is never used
[INFO] [stdout]    --> src/device/mod.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn disconnected(id: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `work_mode_device` is never used
[INFO] [stdout]    --> src/device/mod.rs:159:8
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub fn work_mode_device(id: String, work_mode: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_device_zero` is never used
[INFO] [stdout]    --> src/device/mod.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub fn set_device_zero(id: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `zero` is never read
[INFO] [stdout]    --> src/device/mod.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct Device {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub zero: bool,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Device` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Usb`, `File`, `Hid`, and `None` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:293:5
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub enum Types {
[INFO] [stdout]     |          ----- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 293 |     Usb,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 294 |     /// 文件解析设备
[INFO] [stdout] 295 |     File,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 296 |     /// 蓝牙HID设备
[INFO] [stdout] 297 |     Hid,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 298 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Types` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/device/mod.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl Types {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 311 |     fn from(name: &str) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `SpiritLevel`, `Gyroscope`, `Potentiometer`, `Instrument`, `ScanCode`, and `None` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:325:5
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub enum Mode {
[INFO] [stdout]     |          ---- variants in this enum
[INFO] [stdout] 324 |     /// 水平仪
[INFO] [stdout] 325 |     SpiritLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 326 |     /// 陀螺仪
[INFO] [stdout] 327 |     Gyroscope,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |     Potentiometer,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 332 |     /// 仪器
[INFO] [stdout] 333 |     Instrument,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 334 |     /// 扫码抢
[INFO] [stdout] 335 |     ScanCode,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 336 |     /// 未知
[INFO] [stdout] 337 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Mode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/device/mod.rs:352:8
[INFO] [stdout]     |
[INFO] [stdout] 340 | impl Mode {
[INFO] [stdout]     | --------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 352 |     fn from(name: &str) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ConnectionState` is never used
[INFO] [stdout]    --> src/device/mod.rs:367:10
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub enum ConnectionState {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `str` is never used
[INFO] [stdout]    --> src/device/mod.rs:381:8
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl ConnectionState {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] 381 |     fn str(&mut self) -> &'static str {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Dormancy`, `Abnormal`, `Disabled`, `ConnectionFailed`, and `Unconnected` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:397:5
[INFO] [stdout]     |
[INFO] [stdout] 395 | pub enum ErrState {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 396 |     /// 休眠
[INFO] [stdout] 397 |     Dormancy,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 398 |     /// 异常
[INFO] [stdout] 399 |     Abnormal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 400 |     /// 禁用
[INFO] [stdout] 401 |     Disabled,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 402 |     /// 连接失败
[INFO] [stdout] 403 |     ConnectionFailed,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 404 |     /// 断开连接
[INFO] [stdout] 405 |     Unconnected,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ErrState` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Data` is never constructed
[INFO] [stdout]    --> src/device/mod.rs:410:12
[INFO] [stdout]     |
[INFO] [stdout] 410 | pub struct Data {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `json` is never used
[INFO] [stdout]    --> src/device/mod.rs:460:12
[INFO] [stdout]     |
[INFO] [stdout] 459 | impl Data {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] 460 |     pub fn json(self) -> JsonValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ConnectFailed` and `Removed` are never constructed
[INFO] [stdout]    --> src/device/mod.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 480 | pub enum Status {
[INFO] [stdout]     |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 493 |     ConnectFailed,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 494 |     /// 移除
[INFO] [stdout] 495 |     Removed,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Status` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/device/mod.rs:513:12
[INFO] [stdout]     |
[INFO] [stdout] 499 | impl Status {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     pub fn from(name: &str) -> Status {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/device/ble/mod.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     LVH(Lvh),
[INFO] [stdout]    |     --- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BleModel` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 45 -     LVH(Lvh),
[INFO] [stdout] 45 +     LVH(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]  --> src/device/ble/lvh.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Lvh {
[INFO] [stdout]   |            --- field in this struct
[INFO] [stdout] 5 |     pub id: String,
[INFO] [stdout]   |         ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Lvh` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wt90` is never constructed
[INFO] [stdout]  --> src/device/ble/wt90.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Wt90 {}
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `a_xyz`, `w_xyz`, `angle_x`, `angle_y`, and `angle_z` are never used
[INFO] [stdout]   --> src/device/ble/wt90.rs:7:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl Wt90 {
[INFO] [stdout]    | --------- associated functions in this implementation
[INFO] [stdout]  6 |     /// 加速度
[INFO] [stdout]  7 |     pub fn a_xyz(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn w_xyz(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn angle_x(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn angle_y(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn angle_z(mut data: Vec<u8>) -> f64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 36s
[INFO] running `Command { std: "docker" "inspect" "58b2f229fd4ab1b42ac2784602d60a407bad792e637ce93e647e936e57af62bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58b2f229fd4ab1b42ac2784602d60a407bad792e637ce93e647e936e57af62bb", kill_on_drop: false }`
[INFO] [stdout] 58b2f229fd4ab1b42ac2784602d60a407bad792e637ce93e647e936e57af62bb
