[INFO] fetching crate exc-core 0.7.0-alpha.0...
[INFO] checking exc-core-0.7.0-alpha.0 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate exc-core 0.7.0-alpha.0 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate exc-core 0.7.0-alpha.0 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate exc-core 0.7.0-alpha.0
[INFO] finished tweaking crates.io crate exc-core 0.7.0-alpha.0
[INFO] tweaked toml for crates.io crate exc-core 0.7.0-alpha.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 221 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding ahash v0.7.8 (latest: v0.8.11)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding bytecheck v0.6.12 (latest: v0.7.0)
[INFO] [stderr]       Adding bytecheck_derive v0.6.12 (latest: v0.7.0)
[INFO] [stderr]       Adding cfg_aliases v0.1.1 (latest: v0.2.0)
[INFO] [stderr]       Adding convert_case v0.4.0 (latest: v0.6.0)
[INFO] [stderr]       Adding foreign-types v0.3.2 (latest: v0.5.0)
[INFO] [stderr]       Adding foreign-types-shared v0.1.1 (latest: v0.3.1)
[INFO] [stderr]       Adding generic-array v0.14.7 (latest: v1.0.0)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding hashbrown v0.12.3 (latest: v0.14.5)
[INFO] [stderr]       Adding hashbrown v0.13.2 (latest: v0.14.5)
[INFO] [stderr]       Adding http v0.2.12 (latest: v1.1.0)
[INFO] [stderr]       Adding http-body v0.4.6 (latest: v1.0.0)
[INFO] [stderr]       Adding hyper v0.14.28 (latest: v1.3.1)
[INFO] [stderr]       Adding hyper-rustls v0.24.2 (latest: v0.27.1)
[INFO] [stderr]       Adding hyper-tls v0.5.0 (latest: v0.6.0)
[INFO] [stderr]       Adding linux-raw-sys v0.4.13 (latest: v0.6.4)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding ptr_meta v0.1.4 (latest: v0.2.0)
[INFO] [stderr]       Adding ptr_meta_derive v0.1.4 (latest: v0.2.0)
[INFO] [stderr]       Adding radium v0.7.0 (latest: v1.1.0)
[INFO] [stderr]       Adding rustls v0.21.12 (latest: v0.23.5)
[INFO] [stderr]       Adding rustls-webpki v0.101.7 (latest: v0.102.3)
[INFO] [stderr]       Adding serde_with v2.3.3 (latest: v3.8.1)
[INFO] [stderr]       Adding serde_with_macros v2.3.3 (latest: v3.8.1)
[INFO] [stderr]       Adding smol_str v0.1.24 (latest: v0.2.1)
[INFO] [stderr]       Adding strsim v0.10.0 (latest: v0.11.1)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.60)
[INFO] [stderr]       Adding tokio-rustls v0.24.1 (latest: v0.26.0)
[INFO] [stderr]       Adding tokio-tungstenite v0.20.1 (latest: v0.21.0)
[INFO] [stderr]       Adding toml_edit v0.21.1 (latest: v0.22.12)
[INFO] [stderr]       Adding tungstenite v0.20.1 (latest: v0.21.0)
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.0+wasi-0.2.0)
[INFO] [stderr]       Adding webpki-roots v0.25.4 (latest: v0.26.1)
[INFO] [stderr]       Adding windows-sys v0.48.0 (latest: v0.52.0)
[INFO] [stderr]       Adding windows-targets v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_aarch64_gnullvm v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_aarch64_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_i686_gnu v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_i686_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_gnu v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_gnullvm v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding winnow v0.5.40 (latest: v0.6.7)
[INFO] [stderr]       Adding wyz v0.5.1 (latest: v0.6.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rust_decimal_macros v1.34.2
[INFO] [stderr]   Downloaded tower-make v0.3.0
[INFO] [stderr]   Downloaded exc-make v0.7.3
[INFO] [stderr]   Downloaded exc-service v0.7.3
[INFO] [stderr]   Downloaded exc-symbol v0.7.3
[INFO] [stderr]   Downloaded exc-types v0.7.3
[INFO] [stderr]   Downloaded positions v0.2.1
[INFO] [stderr]   Downloaded indicator v0.4.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2e0d511bca9a4064928e0cfec2fe0c37b5a27e71a995c2ddeee421dd0c24c414
[INFO] running `Command { std: "docker" "start" "-a" "2e0d511bca9a4064928e0cfec2fe0c37b5a27e71a995c2ddeee421dd0c24c414", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e0d511bca9a4064928e0cfec2fe0c37b5a27e71a995c2ddeee421dd0c24c414", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e0d511bca9a4064928e0cfec2fe0c37b5a27e71a995c2ddeee421dd0c24c414", kill_on_drop: false }`
[INFO] [stdout] 2e0d511bca9a4064928e0cfec2fe0c37b5a27e71a995c2ddeee421dd0c24c414
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 49393378f85f446f4c36b3368bfa46c312021b34c5f3a99eaf36f1d77425deee
[INFO] running `Command { std: "docker" "start" "-a" "49393378f85f446f4c36b3368bfa46c312021b34c5f3a99eaf36f1d77425deee", kill_on_drop: false }`
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.92
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling darling_core v0.20.8
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking serde v1.0.200
[INFO] [stderr]    Compiling bumpalo v3.16.0
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking zerocopy v0.7.32
[INFO] [stderr]    Compiling time-macros v0.2.18
[INFO] [stderr]    Compiling wasm-bindgen v0.2.92
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.92
[INFO] [stderr]    Compiling rust_decimal v1.35.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking tower-layer v0.3.2
[INFO] [stderr]     Checking tinyvec v1.6.0
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.92
[INFO] [stderr]     Checking tower-make v0.3.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.5
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking smol_str v0.1.24
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.92
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]    Compiling darling_macro v0.20.8
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]     Checking tokio v1.37.0
[INFO] [stderr]     Checking exc-service v0.7.3
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking async-stream v0.3.5
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.42
[INFO] [stderr]    Compiling darling v0.20.8
[INFO] [stderr]    Compiling serde_with_macros v2.3.3
[INFO] [stderr]     Checking js-sys v0.3.69
[INFO] [stderr]     Checking tokio-stream v0.1.15
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]    Compiling rust_decimal_macros v1.34.2
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]     Checking indicator v0.4.4
[INFO] [stderr]     Checking serde_with v2.3.3
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking positions v0.2.1
[INFO] [stderr]     Checking exc-symbol v0.7.3
[INFO] [stderr]     Checking exc-types v0.7.3
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.42
[INFO] [stderr]     Checking wasm-bindgen-test v0.3.42
[INFO] [stderr]     Checking exc-make v0.7.3
[INFO] [stderr]     Checking exc-core v0.7.0-alpha.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51 | | where
[INFO] [stdout] 52 | |     S: Clone + Send + 'static,
[INFO] [stdout] 53 | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] 54 | |     S: ExcService<SubscribeBidAsk>,
[INFO] [stdout] 55 | |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout] 56 | |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    | |__________________________________________________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51 | | where
[INFO] [stdout] 52 | |     S: Clone + Send + 'static,
[INFO] [stdout] 53 | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] 54 | |     S: ExcService<SubscribeBidAsk>,
[INFO] [stdout] 55 | |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout] 56 | |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    | |__________________________________________________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]     |
[INFO] [stdout] 50  | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51  | | where
[INFO] [stdout] 52  | |     S: Clone + Send + 'static,
[INFO] [stdout] 53  | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] ...   |
[INFO] [stdout] 125 | |     }
[INFO] [stdout] 126 | | }
[INFO] [stdout]     | |_^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]     |
[INFO] [stdout] 50  | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51  | | where
[INFO] [stdout] 52  | |     S: Clone + Send + 'static,
[INFO] [stdout] 53  | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] ...   |
[INFO] [stdout] 125 | |     }
[INFO] [stdout] 126 | | }
[INFO] [stdout]     | |_^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     type Response = TickerStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     type Response = TickerStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     type Error = ExchangeError;
[INFO] [stdout]    |     ^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     type Error = ExchangeError;
[INFO] [stdout]    |     ^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |     ^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |     ^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:61
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                                                             ^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:61
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                                                             ^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:71
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:71
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:85
[INFO] [stdout]    |
[INFO] [stdout] 62 |       fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |  _____________________________________________________________________________________^
[INFO] [stdout] 63 | |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout] 64 | |     }
[INFO] [stdout]    | |_____^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:85
[INFO] [stdout]    |
[INFO] [stdout] 62 |       fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |  _____________________________________________________________________________________^
[INFO] [stdout] 63 | |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout] 64 | |     }
[INFO] [stdout]    | |_____^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:63:48
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout]    |         -------------------------------------- ^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |         |
[INFO] [stdout]    |         required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:66:63
[INFO] [stdout]     |
[INFO] [stdout] 66  |       fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]     |  _______________________________________________________________^
[INFO] [stdout] 67  | |         let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout] 68  | |             &mut self.svc,
[INFO] [stdout] 69  | |             SubscribeTrades {
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |         .boxed()
[INFO] [stdout] 125 | |     }
[INFO] [stdout]     | |_____^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]     |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]     |
[INFO] [stdout] 50  | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55  |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]     |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:66:63
[INFO] [stdout]     |
[INFO] [stdout] 66  |       fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]     |  _______________________________________________________________^
[INFO] [stdout] 67  | |         let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout] 68  | |             &mut self.svc,
[INFO] [stdout] 69  | |             SubscribeTrades {
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |         .boxed()
[INFO] [stdout] 125 | |     }
[INFO] [stdout]     | |_____^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]     |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]     |
[INFO] [stdout] 50  | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56  |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]     |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |           let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout]    |                       -------------------------------- required by a bound introduced by this call
[INFO] [stdout] 68 |               &mut self.svc,
[INFO] [stdout] 69 | /             SubscribeTrades {
[INFO] [stdout] 70 | |                 instrument: req.instrument.clone(),
[INFO] [stdout] 71 | |             },
[INFO] [stdout]    | |_____________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |           let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout]    |  _____________________^
[INFO] [stdout] 68 | |             &mut self.svc,
[INFO] [stdout] 69 | |             SubscribeTrades {
[INFO] [stdout] 70 | |                 instrument: req.instrument.clone(),
[INFO] [stdout] 71 | |             },
[INFO] [stdout] 72 | |         );
[INFO] [stdout]    | |_________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FutureExt`
[INFO] [stdout]  --> src/util/trade_bid_ask.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::{future::BoxFuture, FutureExt, StreamExt, TryStreamExt};
[INFO] [stdout]   |                                  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/util/trade_bid_ask.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::{future::BoxFuture, FutureExt, StreamExt, TryStreamExt};
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:75:9
[INFO] [stdout]     |
[INFO] [stdout] 75  | /         async move {
[INFO] [stdout] 76  | |             let trades = trade.await?.map_ok(Either::Left);
[INFO] [stdout] 77  | |             let bid_asks = svc
[INFO] [stdout] 78  | |                 .call(SubscribeBidAsk {
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |             Ok(stream.boxed())
[INFO] [stdout] 123 | |         }
[INFO] [stdout]     | |_________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:75:9
[INFO] [stdout]     |
[INFO] [stdout] 75  | /         async move {
[INFO] [stdout] 76  | |             let trades = trade.await?.map_ok(Either::Left);
[INFO] [stdout] 77  | |             let bid_asks = svc
[INFO] [stdout] 78  | |                 .call(SubscribeBidAsk {
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |             Ok(stream.boxed())
[INFO] [stdout] 123 | |         }
[INFO] [stdout]     | |_________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::__private::try_stream_inner` which comes from the expansion of the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::__private::try_stream_inner` which comes from the expansion of the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:111:58
[INFO] [stdout]     |
[INFO] [stdout] 111 | ...                   ticker.bid = bid_ask.bid.map(|b| b.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:111:58
[INFO] [stdout]     |
[INFO] [stdout] 111 | ...                   ticker.bid = bid_ask.bid.map(|b| b.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:112:58
[INFO] [stdout]     |
[INFO] [stdout] 112 | ...                   ticker.ask = bid_ask.ask.map(|a| a.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:112:58
[INFO] [stdout]     |
[INFO] [stdout] 112 | ...                   ticker.ask = bid_ask.ask.map(|a| a.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:113:63
[INFO] [stdout]     |
[INFO] [stdout] 113 | ...                   ticker.bid_size = bid_ask.bid.map(|b| b.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:113:63
[INFO] [stdout]     |
[INFO] [stdout] 113 | ...                   ticker.bid_size = bid_ask.bid.map(|b| b.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:114:63
[INFO] [stdout]     |
[INFO] [stdout] 114 | ...                   ticker.ask_size = bid_ask.ask.map(|a| a.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:114:63
[INFO] [stdout]     |
[INFO] [stdout] 114 | ...                   ticker.ask_size = bid_ask.ask.map(|a| a.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 48 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51 | | where
[INFO] [stdout] 52 | |     S: Clone + Send + 'static,
[INFO] [stdout] 53 | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] 54 | |     S: ExcService<SubscribeBidAsk>,
[INFO] [stdout] 55 | |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout] 56 | |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    | |__________________________________________________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51 | | where
[INFO] [stdout] 52 | |     S: Clone + Send + 'static,
[INFO] [stdout] 53 | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] 54 | |     S: ExcService<SubscribeBidAsk>,
[INFO] [stdout] 55 | |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout] 56 | |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    | |__________________________________________________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]     |
[INFO] [stdout] 50  | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51  | | where
[INFO] [stdout] 52  | |     S: Clone + Send + 'static,
[INFO] [stdout] 53  | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] ...   |
[INFO] [stdout] 125 | |     }
[INFO] [stdout] 126 | | }
[INFO] [stdout]     | |_^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:1
[INFO] [stdout]     |
[INFO] [stdout] 50  | / impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout] 51  | | where
[INFO] [stdout] 52  | |     S: Clone + Send + 'static,
[INFO] [stdout] 53  | |     S: ExcService<SubscribeTrades>,
[INFO] [stdout] ...   |
[INFO] [stdout] 125 | |     }
[INFO] [stdout] 126 | | }
[INFO] [stdout]     | |_^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     type Response = TickerStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     type Response = TickerStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     type Error = ExchangeError;
[INFO] [stdout]    |     ^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     type Error = ExchangeError;
[INFO] [stdout]    |     ^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |     ^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `exc-core` (lib) due to 49 previous errors; 2 warnings emitted
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |     ^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:61
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                                                             ^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:60:61
[INFO] [stdout]    |
[INFO] [stdout] 60 |     type Future = BoxFuture<'static, Result<Self::Response, Self::Error>>;
[INFO] [stdout]    |                                                             ^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:71
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:71
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:85
[INFO] [stdout]    |
[INFO] [stdout] 62 |       fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |  _____________________________________________________________________________________^
[INFO] [stdout] 63 | |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout] 64 | |     }
[INFO] [stdout]    | |_____^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:62:85
[INFO] [stdout]    |
[INFO] [stdout] 62 |       fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
[INFO] [stdout]    |  _____________________________________________________________________________________^
[INFO] [stdout] 63 | |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout] 64 | |     }
[INFO] [stdout]    | |_____^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]    |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]    |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:63:48
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout]    |         -------------------------------------- ^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |         |
[INFO] [stdout]    |         required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         Service::<SubscribeTrades>::poll_ready(&mut self.svc, cx)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:66:63
[INFO] [stdout]     |
[INFO] [stdout] 66  |       fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]     |  _______________________________________________________________^
[INFO] [stdout] 67  | |         let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout] 68  | |             &mut self.svc,
[INFO] [stdout] 69  | |             SubscribeTrades {
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |         .boxed()
[INFO] [stdout] 125 | |     }
[INFO] [stdout]     | |_____^ the trait `Service<SubscribeTrades>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]     |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]     |
[INFO] [stdout] 50  | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55  |     <S as Service<SubscribeTrades>>::Future: Send,
[INFO] [stdout]     |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:66:63
[INFO] [stdout]     |
[INFO] [stdout] 66  |       fn call(&mut self, req: SubscribeTickers) -> Self::Future {
[INFO] [stdout]     |  _______________________________________________________________^
[INFO] [stdout] 67  | |         let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout] 68  | |             &mut self.svc,
[INFO] [stdout] 69  | |             SubscribeTrades {
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |         .boxed()
[INFO] [stdout] 125 | |     }
[INFO] [stdout]     | |_____^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`, which is required by `TradeBidAsk<S>: Service<SubscribeTickers>`
[INFO] [stdout]     |
[INFO] [stdout] note: required for `TradeBidAsk<S>` to implement `Service<SubscribeTickers>`
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:50:9
[INFO] [stdout]     |
[INFO] [stdout] 50  | impl<S> Service<SubscribeTickers> for TradeBidAsk<S>
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56  |     <S as Service<SubscribeBidAsk>>::Future: Send,
[INFO] [stdout]     |                                              ---- unsatisfied trait bound introduced here
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |           let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout]    |                       -------------------------------- required by a bound introduced by this call
[INFO] [stdout] 68 |               &mut self.svc,
[INFO] [stdout] 69 | /             SubscribeTrades {
[INFO] [stdout] 70 | |                 instrument: req.instrument.clone(),
[INFO] [stdout] 71 | |             },
[INFO] [stdout]    | |_____________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]   --> src/util/trade_bid_ask.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |           let trade = Service::<SubscribeTrades>::call(
[INFO] [stdout]    |  _____________________^
[INFO] [stdout] 68 | |             &mut self.svc,
[INFO] [stdout] 69 | |             SubscribeTrades {
[INFO] [stdout] 70 | |                 instrument: req.instrument.clone(),
[INFO] [stdout] 71 | |             },
[INFO] [stdout] 72 | |         );
[INFO] [stdout]    | |_________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]    |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 52 |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]    |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/util/trade_bid_ask.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::{future::BoxFuture, FutureExt, StreamExt, TryStreamExt};
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FutureExt`
[INFO] [stdout]  --> src/util/trade_bid_ask.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::{future::BoxFuture, FutureExt, StreamExt, TryStreamExt};
[INFO] [stdout]   |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:75:9
[INFO] [stdout]     |
[INFO] [stdout] 75  | /         async move {
[INFO] [stdout] 76  | |             let trades = trade.await?.map_ok(Either::Left);
[INFO] [stdout] 77  | |             let bid_asks = svc
[INFO] [stdout] 78  | |                 .call(SubscribeBidAsk {
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |             Ok(stream.boxed())
[INFO] [stdout] 123 | |         }
[INFO] [stdout]     | |_________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:75:9
[INFO] [stdout]     |
[INFO] [stdout] 75  | /         async move {
[INFO] [stdout] 76  | |             let trades = trade.await?.map_ok(Either::Left);
[INFO] [stdout] 77  | |             let bid_asks = svc
[INFO] [stdout] 78  | |                 .call(SubscribeBidAsk {
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |             Ok(stream.boxed())
[INFO] [stdout] 123 | |         }
[INFO] [stdout]     | |_________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::__private::try_stream_inner` which comes from the expansion of the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:84:26
[INFO] [stdout]     |
[INFO] [stdout] 84  |               let stream = try_stream! {
[INFO] [stdout]     |  __________________________^
[INFO] [stdout] 85  | |                 let mut ticker = Ticker {
[INFO] [stdout] 86  | |                     ts: OffsetDateTime::now_utc(),
[INFO] [stdout] 87  | |                     last: Decimal::ZERO,
[INFO] [stdout] ...   |
[INFO] [stdout] 120 | |                 }
[INFO] [stdout] 121 | |             };
[INFO] [stdout]     | |_____________^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `$crate::__private::try_stream_inner` which comes from the expansion of the macro `try_stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:111:58
[INFO] [stdout]     |
[INFO] [stdout] 111 | ...                   ticker.bid = bid_ask.bid.map(|b| b.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:111:58
[INFO] [stdout]     |
[INFO] [stdout] 111 | ...                   ticker.bid = bid_ask.bid.map(|b| b.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:112:58
[INFO] [stdout]     |
[INFO] [stdout] 112 | ...                   ticker.ask = bid_ask.ask.map(|a| a.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:112:58
[INFO] [stdout]     |
[INFO] [stdout] 112 | ...                   ticker.ask = bid_ask.ask.map(|a| a.0);
[INFO] [stdout]     |                                                    ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:113:63
[INFO] [stdout]     |
[INFO] [stdout] 113 | ...                   ticker.bid_size = bid_ask.bid.map(|b| b.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:113:63
[INFO] [stdout]     |
[INFO] [stdout] 113 | ...                   ticker.bid_size = bid_ask.bid.map(|b| b.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeBidAsk>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:114:63
[INFO] [stdout]     |
[INFO] [stdout] 114 | ...                   ticker.ask_size = bid_ask.ask.map(|a| a.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeBidAsk>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeBidAsk>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `S: Service<SubscribeTrades>` is not satisfied
[INFO] [stdout]    --> src/util/trade_bid_ask.rs:114:63
[INFO] [stdout]     |
[INFO] [stdout] 114 | ...                   ticker.ask_size = bid_ask.ask.map(|a| a.1);
[INFO] [stdout]     |                                                         ^^^ the trait `Service<SubscribeTrades>` is not implemented for `S`
[INFO] [stdout]     |
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 52  |     S: Clone + Send + 'static + tower::Service<exc_types::SubscribeTrades>,
[INFO] [stdout]     |                               ++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 48 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `exc-core` (lib test) due to 49 previous errors; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "49393378f85f446f4c36b3368bfa46c312021b34c5f3a99eaf36f1d77425deee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "49393378f85f446f4c36b3368bfa46c312021b34c5f3a99eaf36f1d77425deee", kill_on_drop: false }`
[INFO] [stdout] 49393378f85f446f4c36b3368bfa46c312021b34c5f3a99eaf36f1d77425deee
