[INFO] fetching crate unionize 0.3.0...
[INFO] testing unionize-0.3.0 against 1.76.0 for beta-1.77-1
[INFO] extracting crate unionize 0.3.0 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate unionize 0.3.0 on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate unionize 0.3.0
[INFO] finished tweaking crates.io crate unionize 0.3.0
[INFO] tweaked toml for crates.io crate unionize 0.3.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] crate crates.io crate unionize 0.3.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded sise v0.8.0
[INFO] [stderr]   Downloaded proptest v1.1.0
[INFO] [stderr]   Downloaded prettyplease v0.2.5
[INFO] [stderr]   Downloaded xs233 v0.3.0
[INFO] [stderr]   Downloaded xs233-sys v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4a6fa8699434646e99432ee97752cd6c9b576d45db24454e0b8ded49dd4b8b6d
[INFO] running `Command { std: "docker" "start" "-a" "4a6fa8699434646e99432ee97752cd6c9b576d45db24454e0b8ded49dd4b8b6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4a6fa8699434646e99432ee97752cd6c9b576d45db24454e0b8ded49dd4b8b6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4a6fa8699434646e99432ee97752cd6c9b576d45db24454e0b8ded49dd4b8b6d", kill_on_drop: false }`
[INFO] [stdout] 4a6fa8699434646e99432ee97752cd6c9b576d45db24454e0b8ded49dd4b8b6d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3e9f9bed4f59c04007fcf1c240ce1cacf4b6902b5d3241df28c85f030b35f589
[INFO] running `Command { std: "docker" "start" "-a" "3e9f9bed4f59c04007fcf1c240ce1cacf4b6902b5d3241df28c85f030b35f589", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.141
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling quote v1.0.27
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling prettyplease v0.2.5
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.56
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling clang-sys v1.6.1
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling syn v2.0.16
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling bindgen v0.65.1
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling shlex v1.1.0
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling rustix v0.37.11
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling libm v0.2.6
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling serde v1.0.164
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling procinfo v0.4.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling digest v0.10.6
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling cpufeatures v0.2.7
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling nom v2.2.1
[INFO] [stderr]    Compiling sha2 v0.10.6
[INFO] [stderr]    Compiling sise v0.8.0
[INFO] [stderr]    Compiling serde_derive v1.0.164
[INFO] [stderr]    Compiling proptest v1.1.0
[INFO] [stderr]    Compiling xs233-sys v0.2.0
[INFO] [stderr]    Compiling serde_cbor v0.10.2
[INFO] [stderr]    Compiling xs233 v0.3.0
[INFO] [stderr]    Compiling unionize v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 26.04s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "3e9f9bed4f59c04007fcf1c240ce1cacf4b6902b5d3241df28c85f030b35f589", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e9f9bed4f59c04007fcf1c240ce1cacf4b6902b5d3241df28c85f030b35f589", kill_on_drop: false }`
[INFO] [stdout] 3e9f9bed4f59c04007fcf1c240ce1cacf4b6902b5d3241df28c85f030b35f589
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 00d6e95a50c43b220ecf63392c309509ac1b0e4400f137edf441037611613d82
[INFO] running `Command { std: "docker" "start" "-a" "00d6e95a50c43b220ecf63392c309509ac1b0e4400f137edf441037611613d82", kill_on_drop: false }`
[INFO] [stderr]    Compiling unionize v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 4.31s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "00d6e95a50c43b220ecf63392c309509ac1b0e4400f137edf441037611613d82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "00d6e95a50c43b220ecf63392c309509ac1b0e4400f137edf441037611613d82", kill_on_drop: false }`
[INFO] [stdout] 00d6e95a50c43b220ecf63392c309509ac1b0e4400f137edf441037611613d82
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 792535ca796d7f9ff2e9cad8d533cb7629e1038005080c4e754400a570a2e42b
[INFO] running `Command { std: "docker" "start" "-a" "792535ca796d7f9ff2e9cad8d533cb7629e1038005080c4e754400a570a2e42b", kill_on_drop: false }`
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/unionize-fa16c4e87c96ba0a)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test query::item_filter::tests::base_test ... ok
[INFO] [stdout] test monoid::timestamped::tests::timestamped_is_protocolmonoid ... ok
[INFO] [stdout] test monoid::mulhash_xs233::tests::serialize_correctness ... ok
[INFO] [stdout] test query::item_filter::tests::repro_atttempt ... ok
[INFO] [stdout] test item::le_byte_array::tests::serialize_correctness ... ok
[INFO] [stdout] test range::tests::serialize_correctness ... ok
[INFO] [stdout] test query::split::test::split_correctness ... ok
[INFO] [stdout] test query::simple::test::simple_correctness ... ok
[INFO] [stdout] test protocol::tests::serialize_correctness ... ok
[INFO] [stdout] test protocol::tests::protocol_correctness ... FAILED
[INFO] [stdout] test protocol::tests::serialize_correctness_stream ... ok
[INFO] [stdout] test monoid::mulhash_xs233::tests::xsk_lift_and_add_100k_items ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- protocol::tests::protocol_correctness stdout ----
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 356, 386, 392, 405, 422, 443, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 694, 695, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 909, 927, 953, 955, 966, 971, 996}
[INFO] [stdout] b items: {8, 22, 33, 94, 95, 128, 168, 208, 269, 274, 277, 282, 345, 356, 364, 378, 392, 411, 415, 420, 425, 443, 511, 546, 566, 616, 637, 641, 691, 696, 714, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 909, 925}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 997), fp: EncodedCountingMonoid(80, SumMonoid(39378)) }], item_sets: [ItemSet { range: Range(997, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 511), fp: EncodedCountingMonoid(21, SumMonoid(5799)) }, Fingerprint { range: Range(511, 997), fp: EncodedCountingMonoid(21, SumMonoid(15576)) }], item_sets: [ItemSet { range: Range(997, 12), items: [8], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 221), fp: EncodedCountingMonoid(21, SumMonoid(2528)) }, Fingerprint { range: Range(221, 511), fp: EncodedCountingMonoid(20, SumMonoid(7200)) }, Fingerprint { range: Range(511, 787), fp: EncodedCountingMonoid(20, SumMonoid(12783)) }, Fingerprint { range: Range(787, 997), fp: EncodedCountingMonoid(19, SumMonoid(16867)) }], item_sets: [], wants: [8], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 128), fp: EncodedCountingMonoid(4, SumMonoid(244)) }, Fingerprint { range: Range(128, 221), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(221, 378), fp: EncodedCountingMonoid(7, SumMonoid(2167)) }, Fingerprint { range: Range(378, 511), fp: EncodedCountingMonoid(7, SumMonoid(2884)) }, Fingerprint { range: Range(511, 691), fp: EncodedCountingMonoid(6, SumMonoid(3517)) }, Fingerprint { range: Range(691, 787), fp: EncodedCountingMonoid(6, SumMonoid(4341)) }, Fingerprint { range: Range(787, 882), fp: EncodedCountingMonoid(5, SumMonoid(4107)) }, Fingerprint { range: Range(882, 997), fp: EncodedCountingMonoid(4, SumMonoid(3611)) }], item_sets: [], wants: [], provide: [(8, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 60), fp: EncodedCountingMonoid(5, SumMonoid(178)) }, Fingerprint { range: Range(60, 128), fp: EncodedCountingMonoid(5, SumMonoid(405)) }, Fingerprint { range: Range(128, 195), fp: EncodedCountingMonoid(6, SumMonoid(927)) }, Fingerprint { range: Range(195, 221), fp: EncodedCountingMonoid(5, SumMonoid(1018)) }, Fingerprint { range: Range(221, 300), fp: EncodedCountingMonoid(6, SumMonoid(1537)) }, Fingerprint { range: Range(300, 378), fp: EncodedCountingMonoid(5, SumMonoid(1631)) }, Fingerprint { range: Range(378, 478), fp: EncodedCountingMonoid(5, SumMonoid(2048)) }, Fingerprint { range: Range(478, 511), fp: EncodedCountingMonoid(4, SumMonoid(1984)) }, Fingerprint { range: Range(511, 601), fp: EncodedCountingMonoid(7, SumMonoid(3941)) }, Fingerprint { range: Range(601, 691), fp: EncodedCountingMonoid(7, SumMonoid(4419)) }, Fingerprint { range: Range(691, 748), fp: EncodedCountingMonoid(3, SumMonoid(2129)) }, Fingerprint { range: Range(748, 787), fp: EncodedCountingMonoid(3, SumMonoid(2294)) }, Fingerprint { range: Range(787, 858), fp: EncodedCountingMonoid(5, SumMonoid(4082)) }, Fingerprint { range: Range(858, 882), fp: EncodedCountingMonoid(5, SumMonoid(4320)) }, Fingerprint { range: Range(882, 955), fp: EncodedCountingMonoid(5, SumMonoid(4577)) }, Fingerprint { range: Range(955, 997), fp: EncodedCountingMonoid(4, SumMonoid(3888)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(378, 420), fp: EncodedCountingMonoid(4, SumMonoid(1596)) }, Fingerprint { range: Range(420, 478), fp: EncodedCountingMonoid(3, SumMonoid(1288)) }, Fingerprint { range: Range(691, 729), fp: EncodedCountingMonoid(3, SumMonoid(2101)) }], item_sets: [ItemSet { range: Range(12, 60), items: [22, 33], want_response: true }, ItemSet { range: Range(60, 128), items: [94, 95], want_response: true }, ItemSet { range: Range(128, 195), items: [128, 168], want_response: true }, ItemSet { range: Range(195, 221), items: [208], want_response: true }, ItemSet { range: Range(221, 277), items: [269, 274], want_response: true }, ItemSet { range: Range(277, 300), items: [277, 282], want_response: true }, ItemSet { range: Range(300, 364), items: [345, 356], want_response: true }, ItemSet { range: Range(364, 378), items: [364], want_response: true }, ItemSet { range: Range(478, 511), items: [], want_response: true }, ItemSet { range: Range(511, 566), items: [511, 546], want_response: true }, ItemSet { range: Range(566, 601), items: [566], want_response: true }, ItemSet { range: Range(601, 641), items: [616, 637], want_response: true }, ItemSet { range: Range(641, 691), items: [641], want_response: true }, ItemSet { range: Range(729, 748), items: [729, 735], want_response: true }, ItemSet { range: Range(748, 787), items: [776], want_response: true }, ItemSet { range: Range(787, 815), items: [790, 791], want_response: true }, ItemSet { range: Range(815, 858), items: [815, 844], want_response: true }, ItemSet { range: Range(858, 882), items: [867], want_response: true }, ItemSet { range: Range(882, 909), items: [882, 895], want_response: true }, ItemSet { range: Range(909, 955), items: [909, 925], want_response: true }, ItemSet { range: Range(955, 997), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 60), items: [12, 26, 31, 50, 59], want_response: false }, ItemSet { range: Range(60, 128), items: [60, 72, 74, 75, 124], want_response: false }, ItemSet { range: Range(128, 195), items: [137, 140, 141, 142, 175, 192], want_response: false }, ItemSet { range: Range(195, 221), items: [195, 202, 206, 207, 208], want_response: false }, ItemSet { range: Range(221, 277), items: [221, 231, 248, 266], want_response: false }, ItemSet { range: Range(277, 300), items: [285, 286], want_response: false }, ItemSet { range: Range(300, 364), items: [300, 318, 328, 329, 356], want_response: false }, ItemSet { range: Range(364, 378), items: [], want_response: false }, ItemSet { range: Range(478, 511), items: [478, 495, 502, 509], want_response: false }, ItemSet { range: Range(511, 566), items: [515, 538, 558, 564], want_response: false }, ItemSet { range: Range(566, 601), items: [572, 596, 598], want_response: false }, ItemSet { range: Range(601, 641), items: [601, 610, 622, 636, 639], want_response: false }, ItemSet { range: Range(641, 691), items: [646, 665], want_response: false }, ItemSet { range: Range(729, 748), items: [740], want_response: false }, ItemSet { range: Range(748, 787), items: [748, 771, 775], want_response: false }, ItemSet { range: Range(787, 815), items: [787, 795, 814], want_response: false }, ItemSet { range: Range(815, 858), items: [837, 849], want_response: false }, ItemSet { range: Range(858, 882), items: [858, 859, 863, 864, 876], want_response: false }, ItemSet { range: Range(882, 909), items: [892, 896], want_response: false }, ItemSet { range: Range(909, 955), items: [909, 927, 953], want_response: false }, ItemSet { range: Range(955, 997), items: [955, 966, 971, 996], want_response: false }, ItemSet { range: Range(378, 405), items: [386, 392], want_response: true }, ItemSet { range: Range(405, 420), items: [405], want_response: true }, ItemSet { range: Range(420, 478), items: [422, 443], want_response: true }, ItemSet { range: Range(691, 729), items: [694, 695], want_response: true }], wants: [22, 33, 94, 95, 128, 168, 269, 274, 277, 282, 345, 364, 511, 546, 566, 616, 637, 641, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 925], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(378, 405), items: [378, 392], want_response: false }, ItemSet { range: Range(405, 420), items: [411, 415], want_response: false }, ItemSet { range: Range(420, 478), items: [420, 425, 443], want_response: false }, ItemSet { range: Range(691, 729), items: [691, 696, 714], want_response: false }], wants: [12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 927, 953, 955, 966, 971, 996, 386, 405, 422, 694, 695], provide: [(22, true), (33, true), (94, true), (95, true), (128, true), (168, true), (269, true), (274, true), (277, true), (282, true), (345, true), (364, true), (511, true), (546, true), (566, true), (616, true), (637, true), (641, true), (729, true), (735, true), (776, true), (790, true), (791, true), (815, true), (844, true), (867, true), (882, true), (895, true), (925, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [378, 411, 415, 420, 425, 691, 696, 714], provide: [(12, true), (26, true), (31, true), (50, true), (59, true), (60, true), (72, true), (74, true), (75, true), (124, true), (137, true), (140, true), (141, true), (142, true), (175, true), (192, true), (195, true), (202, true), (206, true), (207, true), (221, true), (231, true), (248, true), (266, true), (285, true), (286, true), (300, true), (318, true), (328, true), (329, true), (478, true), (495, true), (502, true), (509, true), (515, true), (538, true), (558, true), (564, true), (572, true), (596, true), (598, true), (601, true), (610, true), (622, true), (636, true), (639, true), (646, true), (665, true), (740, true), (748, true), (771, true), (775, true), (787, true), (795, true), (814, true), (837, true), (849, true), (858, true), (859, true), (863, true), (864, true), (876, true), (892, true), (896, true), (927, true), (953, true), (955, true), (966, true), (971, true), (996, true), (386, true), (405, true), (422, true), (694, true), (695, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(378, true), (411, true), (415, true), (420, true), (425, true), (691, true), (696, true), (714, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 356, 386, 392, 405, 422, 443, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 694, 695, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 909, 927, 953, 955, 966, 971, 996} + [8, 22, 33, 94, 95, 128, 168, 269, 274, 277, 282, 345, 364, 511, 546, 566, 616, 637, 641, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 925, 378, 411, 415, 420, 425, 691, 696, 714]
[INFO] [stdout] b all: {8, 22, 33, 94, 95, 128, 168, 208, 269, 274, 277, 282, 345, 356, 364, 378, 392, 411, 415, 420, 425, 443, 511, 546, 566, 616, 637, 641, 691, 696, 714, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 909, 925} + [12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 927, 953, 955, 966, 971, 996, 386, 405, 422, 694, 695]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 12, 22, 26, 31, 33, 50, 59, 60, 72, 74, 75, 94, 95, 124, 128, 137, 140, 141, 142, 168, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 269, 274, 277, 282, 285, 286, 300, 318, 328, 329, 345, 356, 364, 378, 386, 392, 405, 411, 415, 420, 422, 425, 443, 478, 495, 502, 509, 511, 515, 538, 546, 558, 564, 566, 572, 596, 598, 601, 610, 616, 622, 636, 637, 639, 641, 646, 665, 691, 694, 695, 696, 714, 729, 735, 740, 748, 771, 775, 776, 787, 790, 791, 795, 814, 815, 837, 844, 849, 858, 859, 863, 864, 867, 876, 882, 892, 895, 896, 909, 925, 927, 953, 955, 966, 971, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 12, 22, 26, 31, 33, 50, 59, 60, 72, 74, 75, 94, 95, 124, 128, 137, 140, 141, 142, 168, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 269, 274, 277, 282, 285, 286, 300, 318, 328, 329, 345, 356, 364, 378, 386, 392, 405, 411, 415, 420, 422, 425, 443, 478, 495, 502, 509, 511, 515, 538, 546, 558, 564, 566, 572, 596, 598, 601, 610, 616, 622, 636, 637, 639, 641, 646, 665, 691, 694, 695, 696, 714, 729, 735, 740, 748, 771, 775, 776, 787, 790, 791, 795, 814, 815, 837, 844, 849, 858, 859, 863, 864, 867, 876, 882, 892, 895, 896, 909, 925, 927, 953, 955, 966, 971, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 12, 22, 26, 31, 33, 50, 59, 60, 72, 74, 75, 94, 95, 124, 128, 137, 140, 141, 142, 168, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 269, 274, 277, 282, 285, 286, 300, 318, 328, 329, 345, 356, 364, 378, 386, 392, 405, 411, 415, 420, 422, 425, 443, 478, 495, 502, 509, 511, 515, 538, 546, 558, 564, 566, 572, 596, 598, 601, 610, 616, 622, 636, 637, 639, 641, 646, 665, 691, 694, 695, 696, 714, 729, 735, 740, 748, 771, 775, 776, 787, 790, 791, 795, 814, 815, 837, 844, 849, 858, 859, 863, 864, 867, 876, 882, 892, 895, 896, 909, 925, 927, 953, 955, 966, 971, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 36, 69, 70, 79, 82, 89, 94, 140, 170, 195, 201, 205, 221, 246, 259, 272, 277, 283, 286, 288, 327, 328, 353, 372, 390, 396, 400, 401, 408, 426, 433, 437, 455, 462, 498, 508, 510, 543, 550, 560, 585, 592, 600, 612, 614, 637, 639, 646, 648, 657, 660, 687, 690, 695, 705, 718, 729, 731, 742, 743, 744, 752, 772, 792, 802, 806, 844, 849, 857, 862, 870, 877, 883, 885, 894, 923, 931, 943, 950, 969, 970, 978}
[INFO] [stdout] b items: {16, 33, 38, 47, 58, 94, 150, 160, 195, 215, 267, 312, 318, 325, 331, 337, 339, 369, 397, 419, 427, 431, 443, 460, 471, 482, 488, 492, 499, 517, 523, 527, 532, 542, 597, 608, 609, 629, 638, 691, 698, 705, 715, 723, 727, 797, 806, 818, 869, 887, 908, 911, 918, 930, 935, 980}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 979), fp: EncodedCountingMonoid(83, SumMonoid(44806)) }], item_sets: [ItemSet { range: Range(979, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 499), fp: EncodedCountingMonoid(28, SumMonoid(8114)) }, Fingerprint { range: Range(499, 979), fp: EncodedCountingMonoid(27, SumMonoid(19259)) }], item_sets: [ItemSet { range: Range(979, 4), items: [980], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 283), fp: EncodedCountingMonoid(18, SumMonoid(2709)) }, Fingerprint { range: Range(283, 499), fp: EncodedCountingMonoid(18, SumMonoid(6943)) }, Fingerprint { range: Range(499, 743), fp: EncodedCountingMonoid(24, SumMonoid(15258)) }, Fingerprint { range: Range(743, 979), fp: EncodedCountingMonoid(23, SumMonoid(19896)) }], item_sets: [], wants: [980], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 150), fp: EncodedCountingMonoid(6, SumMonoid(286)) }, Fingerprint { range: Range(150, 283), fp: EncodedCountingMonoid(5, SumMonoid(987)) }, Fingerprint { range: Range(283, 427), fp: EncodedCountingMonoid(9, SumMonoid(3147)) }, Fingerprint { range: Range(427, 499), fp: EncodedCountingMonoid(8, SumMonoid(3694)) }, Fingerprint { range: Range(499, 629), fp: EncodedCountingMonoid(9, SumMonoid(4954)) }, Fingerprint { range: Range(629, 743), fp: EncodedCountingMonoid(8, SumMonoid(5526)) }, Fingerprint { range: Range(743, 908), fp: EncodedCountingMonoid(5, SumMonoid(4177)) }, Fingerprint { range: Range(908, 979), fp: EncodedCountingMonoid(5, SumMonoid(4602)) }], item_sets: [], wants: [], provide: [(980, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 82), fp: EncodedCountingMonoid(5, SumMonoid(258)) }, Fingerprint { range: Range(82, 150), fp: EncodedCountingMonoid(4, SumMonoid(405)) }, Fingerprint { range: Range(150, 246), fp: EncodedCountingMonoid(5, SumMonoid(992)) }, Fingerprint { range: Range(246, 283), fp: EncodedCountingMonoid(4, SumMonoid(1054)) }, Fingerprint { range: Range(283, 390), fp: EncodedCountingMonoid(7, SumMonoid(2237)) }, Fingerprint { range: Range(390, 427), fp: EncodedCountingMonoid(6, SumMonoid(2421)) }, Fingerprint { range: Range(427, 462), fp: EncodedCountingMonoid(3, SumMonoid(1325)) }, Fingerprint { range: Range(499, 585), fp: EncodedCountingMonoid(5, SumMonoid(2671)) }, Fingerprint { range: Range(585, 629), fp: EncodedCountingMonoid(5, SumMonoid(3003)) }, Fingerprint { range: Range(629, 690), fp: EncodedCountingMonoid(7, SumMonoid(4574)) }, Fingerprint { range: Range(690, 743), fp: EncodedCountingMonoid(7, SumMonoid(5010)) }, Fingerprint { range: Range(743, 849), fp: EncodedCountingMonoid(8, SumMonoid(6255)) }, Fingerprint { range: Range(849, 908), fp: EncodedCountingMonoid(8, SumMonoid(6977)) }, Fingerprint { range: Range(908, 969), fp: EncodedCountingMonoid(4, SumMonoid(3747)) }, Fingerprint { range: Range(969, 979), fp: EncodedCountingMonoid(3, SumMonoid(2917)) }], item_sets: [ItemSet { range: Range(462, 499), items: [462, 498], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 47), fp: EncodedCountingMonoid(3, SumMonoid(87)) }, Fingerprint { range: Range(283, 337), fp: EncodedCountingMonoid(4, SumMonoid(1286)) }, Fingerprint { range: Range(337, 390), fp: EncodedCountingMonoid(3, SumMonoid(1045)) }, Fingerprint { range: Range(499, 527), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(527, 585), fp: EncodedCountingMonoid(3, SumMonoid(1601)) }, Fingerprint { range: Range(690, 715), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(715, 743), fp: EncodedCountingMonoid(3, SumMonoid(2165)) }, Fingerprint { range: Range(908, 930), fp: EncodedCountingMonoid(3, SumMonoid(2737)) }], item_sets: [ItemSet { range: Range(462, 499), items: [471, 482, 488, 492], want_response: false }, ItemSet { range: Range(47, 82), items: [47, 58], want_response: true }, ItemSet { range: Range(82, 150), items: [94], want_response: true }, ItemSet { range: Range(150, 195), items: [150, 160], want_response: true }, ItemSet { range: Range(195, 246), items: [195, 215], want_response: true }, ItemSet { range: Range(246, 283), items: [267], want_response: true }, ItemSet { range: Range(390, 427), items: [397, 419], want_response: true }, ItemSet { range: Range(427, 443), items: [427, 431], want_response: true }, ItemSet { range: Range(443, 462), items: [443, 460], want_response: true }, ItemSet { range: Range(585, 609), items: [597, 608], want_response: true }, ItemSet { range: Range(609, 629), items: [609], want_response: true }, ItemSet { range: Range(629, 690), items: [629, 638], want_response: true }, ItemSet { range: Range(743, 818), items: [797, 806], want_response: true }, ItemSet { range: Range(818, 849), items: [818], want_response: true }, ItemSet { range: Range(849, 908), items: [869, 887], want_response: true }, ItemSet { range: Range(930, 969), items: [930, 935], want_response: true }, ItemSet { range: Range(969, 979), items: [], want_response: true }], wants: [462, 498], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(283, 327), fp: EncodedCountingMonoid(3, SumMonoid(857)) }], item_sets: [ItemSet { range: Range(47, 82), items: [69, 70, 79], want_response: false }, ItemSet { range: Range(82, 150), items: [82, 89, 94, 140], want_response: false }, ItemSet { range: Range(150, 195), items: [170], want_response: false }, ItemSet { range: Range(195, 246), items: [195, 201, 205, 221], want_response: false }, ItemSet { range: Range(246, 283), items: [246, 259, 272, 277], want_response: false }, ItemSet { range: Range(390, 427), items: [390, 396, 400, 401, 408, 426], want_response: false }, ItemSet { range: Range(427, 443), items: [433, 437], want_response: false }, ItemSet { range: Range(443, 462), items: [455], want_response: false }, ItemSet { range: Range(585, 609), items: [585, 592, 600], want_response: false }, ItemSet { range: Range(609, 629), items: [612, 614], want_response: false }, ItemSet { range: Range(629, 690), items: [637, 639, 646, 648, 657, 660, 687], want_response: false }, ItemSet { range: Range(743, 818), items: [743, 744, 752, 772, 792, 802, 806], want_response: false }, ItemSet { range: Range(818, 849), items: [844], want_response: false }, ItemSet { range: Range(849, 908), items: [849, 857, 862, 870, 877, 883, 885, 894], want_response: false }, ItemSet { range: Range(930, 969), items: [931, 943, 950], want_response: false }, ItemSet { range: Range(969, 979), items: [969, 970, 978], want_response: false }, ItemSet { range: Range(4, 47), items: [4, 36], want_response: true }, ItemSet { range: Range(327, 337), items: [327, 328], want_response: true }, ItemSet { range: Range(337, 390), items: [353, 372], want_response: true }, ItemSet { range: Range(499, 527), items: [508, 510], want_response: true }, ItemSet { range: Range(527, 560), items: [543, 550], want_response: true }, ItemSet { range: Range(560, 585), items: [560], want_response: true }, ItemSet { range: Range(690, 705), items: [690, 695], want_response: true }, ItemSet { range: Range(705, 715), items: [705], want_response: true }, ItemSet { range: Range(715, 731), items: [718, 729], want_response: true }, ItemSet { range: Range(731, 743), items: [731, 742], want_response: true }, ItemSet { range: Range(908, 930), items: [923], want_response: true }], wants: [471, 482, 488, 492, 47, 58, 150, 160, 215, 267, 397, 419, 427, 431, 443, 460, 597, 608, 609, 629, 638, 797, 818, 869, 887, 930, 935], provide: [(462, true), (498, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 47), items: [16, 33, 38], want_response: false }, ItemSet { range: Range(327, 337), items: [331], want_response: false }, ItemSet { range: Range(337, 390), items: [337, 339, 369], want_response: false }, ItemSet { range: Range(499, 527), items: [499, 517, 523], want_response: false }, ItemSet { range: Range(527, 560), items: [527, 532, 542], want_response: false }, ItemSet { range: Range(560, 585), items: [], want_response: false }, ItemSet { range: Range(690, 705), items: [691, 698], want_response: false }, ItemSet { range: Range(705, 715), items: [705], want_response: false }, ItemSet { range: Range(715, 731), items: [715, 723, 727], want_response: false }, ItemSet { range: Range(731, 743), items: [], want_response: false }, ItemSet { range: Range(908, 930), items: [908, 911, 918], want_response: false }, ItemSet { range: Range(283, 325), items: [312, 318], want_response: true }, ItemSet { range: Range(325, 327), items: [325], want_response: true }], wants: [69, 70, 79, 82, 89, 140, 170, 201, 205, 221, 246, 259, 272, 277, 390, 396, 400, 401, 408, 426, 433, 437, 455, 585, 592, 600, 612, 614, 637, 639, 646, 648, 657, 660, 687, 743, 744, 752, 772, 792, 802, 844, 849, 857, 862, 870, 877, 883, 885, 894, 931, 943, 950, 969, 970, 978, 4, 36, 327, 328, 353, 372, 508, 510, 543, 550, 560, 690, 695, 718, 729, 731, 742, 923], provide: [(471, true), (482, true), (488, true), (492, true), (47, true), (58, true), (150, true), (160, true), (215, true), (267, true), (397, true), (419, true), (427, true), (431, true), (443, true), (460, true), (597, true), (608, true), (609, true), (629, true), (638, true), (797, true), (818, true), (869, true), (887, true), (930, true), (935, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(283, 325), items: [283, 286, 288], want_response: false }, ItemSet { range: Range(325, 327), items: [], want_response: false }], wants: [16, 33, 38, 331, 337, 339, 369, 499, 517, 523, 527, 532, 542, 691, 698, 715, 723, 727, 908, 911, 918, 312, 318, 325], provide: [(69, true), (70, true), (79, true), (82, true), (89, true), (140, true), (170, true), (201, true), (205, true), (221, true), (246, true), (259, true), (272, true), (277, true), (390, true), (396, true), (400, true), (401, true), (408, true), (426, true), (433, true), (437, true), (455, true), (585, true), (592, true), (600, true), (612, true), (614, true), (637, true), (639, true), (646, true), (648, true), (657, true), (660, true), (687, true), (743, true), (744, true), (752, true), (772, true), (792, true), (802, true), (844, true), (849, true), (857, true), (862, true), (870, true), (877, true), (883, true), (885, true), (894, true), (931, true), (943, true), (950, true), (969, true), (970, true), (978, true), (4, true), (36, true), (327, true), (328, true), (353, true), (372, true), (508, true), (510, true), (543, true), (550, true), (560, true), (690, true), (695, true), (718, true), (729, true), (731, true), (742, true), (923, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [283, 286, 288], provide: [(16, true), (33, true), (38, true), (331, true), (337, true), (339, true), (369, true), (499, true), (517, true), (523, true), (527, true), (532, true), (542, true), (691, true), (698, true), (715, true), (723, true), (727, true), (908, true), (911, true), (918, true), (312, true), (318, true), (325, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(283, true), (286, true), (288, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 36, 69, 70, 79, 82, 89, 94, 140, 170, 195, 201, 205, 221, 246, 259, 272, 277, 283, 286, 288, 327, 328, 353, 372, 390, 396, 400, 401, 408, 426, 433, 437, 455, 462, 498, 508, 510, 543, 550, 560, 585, 592, 600, 612, 614, 637, 639, 646, 648, 657, 660, 687, 690, 695, 705, 718, 729, 731, 742, 743, 744, 752, 772, 792, 802, 806, 844, 849, 857, 862, 870, 877, 883, 885, 894, 923, 931, 943, 950, 969, 970, 978} + [980, 471, 482, 488, 492, 47, 58, 150, 160, 215, 267, 397, 419, 427, 431, 443, 460, 597, 608, 609, 629, 638, 797, 818, 869, 887, 930, 935, 16, 33, 38, 331, 337, 339, 369, 499, 517, 523, 527, 532, 542, 691, 698, 715, 723, 727, 908, 911, 918, 312, 318, 325]
[INFO] [stdout] b all: {16, 33, 38, 47, 58, 94, 150, 160, 195, 215, 267, 312, 318, 325, 331, 337, 339, 369, 397, 419, 427, 431, 443, 460, 471, 482, 488, 492, 499, 517, 523, 527, 532, 542, 597, 608, 609, 629, 638, 691, 698, 705, 715, 723, 727, 797, 806, 818, 869, 887, 908, 911, 918, 930, 935, 980} + [462, 498, 69, 70, 79, 82, 89, 140, 170, 201, 205, 221, 246, 259, 272, 277, 390, 396, 400, 401, 408, 426, 433, 437, 455, 585, 592, 600, 612, 614, 637, 639, 646, 648, 657, 660, 687, 743, 744, 752, 772, 792, 802, 844, 849, 857, 862, 870, 877, 883, 885, 894, 931, 943, 950, 969, 970, 978, 4, 36, 327, 328, 353, 372, 508, 510, 543, 550, 560, 690, 695, 718, 729, 731, 742, 923, 283, 286, 288]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 16, 33, 36, 38, 47, 58, 69, 70, 79, 82, 89, 94, 140, 150, 160, 170, 195, 201, 205, 215, 221, 246, 259, 267, 272, 277, 283, 286, 288, 312, 318, 325, 327, 328, 331, 337, 339, 353, 369, 372, 390, 396, 397, 400, 401, 408, 419, 426, 427, 431, 433, 437, 443, 455, 460, 462, 471, 482, 488, 492, 498, 499, 508, 510, 517, 523, 527, 532, 542, 543, 550, 560, 585, 592, 597, 600, 608, 609, 612, 614, 629, 637, 638, 639, 646, 648, 657, 660, 687, 690, 691, 695, 698, 705, 715, 718, 723, 727, 729, 731, 742, 743, 744, 752, 772, 792, 797, 802, 806, 818, 844, 849, 857, 862, 869, 870, 877, 883, 885, 887, 894, 908, 911, 918, 923, 930, 931, 935, 943, 950, 969, 970, 978, 980]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 16, 33, 36, 38, 47, 58, 69, 70, 79, 82, 89, 94, 140, 150, 160, 170, 195, 201, 205, 215, 221, 246, 259, 267, 272, 277, 283, 286, 288, 312, 318, 325, 327, 328, 331, 337, 339, 353, 369, 372, 390, 396, 397, 400, 401, 408, 419, 426, 427, 431, 433, 437, 443, 455, 460, 462, 471, 482, 488, 492, 498, 499, 508, 510, 517, 523, 527, 532, 542, 543, 550, 560, 585, 592, 597, 600, 608, 609, 612, 614, 629, 637, 638, 639, 646, 648, 657, 660, 687, 690, 691, 695, 698, 705, 715, 718, 723, 727, 729, 731, 742, 743, 744, 752, 772, 792, 797, 802, 806, 818, 844, 849, 857, 862, 869, 870, 877, 883, 885, 887, 894, 908, 911, 918, 923, 930, 931, 935, 943, 950, 969, 970, 978, 980], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 16, 33, 36, 38, 47, 58, 69, 70, 79, 82, 89, 94, 140, 150, 160, 170, 195, 201, 205, 215, 221, 246, 259, 267, 272, 277, 283, 286, 288, 312, 318, 325, 327, 328, 331, 337, 339, 353, 369, 372, 390, 396, 397, 400, 401, 408, 419, 426, 427, 431, 433, 437, 443, 455, 460, 462, 471, 482, 488, 492, 498, 499, 508, 510, 517, 523, 527, 532, 542, 543, 550, 560, 585, 592, 597, 600, 608, 609, 612, 614, 629, 637, 638, 639, 646, 648, 657, 660, 687, 690, 691, 695, 698, 705, 715, 718, 723, 727, 729, 731, 742, 743, 744, 752, 772, 792, 797, 802, 806, 818, 844, 849, 857, 862, 869, 870, 877, 883, 885, 887, 894, 908, 911, 918, 923, 930, 931, 935, 943, 950, 969, 970, 978, 980], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 24, 30, 58, 63, 64, 80, 85, 109, 110, 173, 182, 298, 299, 307, 344, 373, 386, 395, 426, 470, 559, 600, 660, 669, 699, 700, 768, 808, 828, 847, 879, 896}
[INFO] [stdout] b items: {9, 20, 29, 44, 74, 94, 103, 109, 113, 142, 143, 161, 162, 174, 195, 196, 215, 222, 251, 253, 264, 329, 346, 365, 390, 396, 399, 412, 418, 424, 430, 431, 433, 443, 450, 460, 485, 495, 505, 518, 542, 553, 559, 566, 567, 575, 580, 588, 590, 634, 653, 658, 731, 736, 763, 774, 775, 794, 796, 807, 811, 821, 826, 831, 848, 865, 872, 873, 893, 894, 913, 918, 939, 944, 947, 959, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 897), fp: EncodedCountingMonoid(33, SumMonoid(13206)) }], item_sets: [ItemSet { range: Range(897, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 485), fp: EncodedCountingMonoid(35, SumMonoid(9090)) }, Fingerprint { range: Range(485, 897), fp: EncodedCountingMonoid(34, SumMonoid(23778)) }], item_sets: [ItemSet { range: Range(897, 17), items: [913, 918, 939, 944, 947, 959, 993, 9], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 182), fp: EncodedCountingMonoid(11, SumMonoid(813)) }, Fingerprint { range: Range(182, 485), fp: EncodedCountingMonoid(10, SumMonoid(3480)) }, Fingerprint { range: Range(485, 768), fp: EncodedCountingMonoid(6, SumMonoid(3887)) }, Fingerprint { range: Range(768, 897), fp: EncodedCountingMonoid(6, SumMonoid(5026)) }], item_sets: [], wants: [913, 918, 939, 944, 947, 959, 993, 9], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 113), fp: EncodedCountingMonoid(7, SumMonoid(473)) }, Fingerprint { range: Range(113, 182), fp: EncodedCountingMonoid(6, SumMonoid(895)) }, Fingerprint { range: Range(182, 396), fp: EncodedCountingMonoid(11, SumMonoid(3026)) }, Fingerprint { range: Range(396, 485), fp: EncodedCountingMonoid(11, SumMonoid(4696)) }, Fingerprint { range: Range(485, 580), fp: EncodedCountingMonoid(10, SumMonoid(5365)) }, Fingerprint { range: Range(580, 768), fp: EncodedCountingMonoid(9, SumMonoid(5933)) }, Fingerprint { range: Range(768, 831), fp: EncodedCountingMonoid(8, SumMonoid(6404)) }, Fingerprint { range: Range(831, 897), fp: EncodedCountingMonoid(7, SumMonoid(6076)) }], item_sets: [], wants: [], provide: [(913, true), (918, true), (939, true), (944, true), (947, true), (959, true), (993, true), (9, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 64), fp: EncodedCountingMonoid(5, SumMonoid(192)) }, Fingerprint { range: Range(64, 113), fp: EncodedCountingMonoid(5, SumMonoid(448)) }, Fingerprint { range: Range(182, 344), fp: EncodedCountingMonoid(4, SumMonoid(1086)) }, Fingerprint { range: Range(344, 396), fp: EncodedCountingMonoid(4, SumMonoid(1498)) }, Fingerprint { range: Range(580, 699), fp: EncodedCountingMonoid(3, SumMonoid(1929)) }], item_sets: [ItemSet { range: Range(113, 182), items: [173], want_response: true }, ItemSet { range: Range(396, 485), items: [426, 470], want_response: true }, ItemSet { range: Range(485, 580), items: [559], want_response: true }, ItemSet { range: Range(699, 768), items: [699, 700], want_response: true }, ItemSet { range: Range(768, 828), items: [768, 808], want_response: true }, ItemSet { range: Range(828, 831), items: [828], want_response: true }, ItemSet { range: Range(831, 896), items: [847, 879], want_response: true }, ItemSet { range: Range(896, 897), items: [896], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(182, 251), fp: EncodedCountingMonoid(4, SumMonoid(828)) }, Fingerprint { range: Range(251, 344), fp: EncodedCountingMonoid(4, SumMonoid(1097)) }, Fingerprint { range: Range(580, 634), fp: EncodedCountingMonoid(3, SumMonoid(1758)) }, Fingerprint { range: Range(634, 699), fp: EncodedCountingMonoid(3, SumMonoid(1945)) }], item_sets: [ItemSet { range: Range(113, 182), items: [113, 142, 143, 161, 162, 174], want_response: false }, ItemSet { range: Range(396, 485), items: [396, 399, 412, 418, 424, 430, 431, 433, 443, 450, 460], want_response: false }, ItemSet { range: Range(485, 580), items: [485, 495, 505, 518, 542, 553, 559, 566, 567, 575], want_response: false }, ItemSet { range: Range(699, 768), items: [731, 736, 763], want_response: false }, ItemSet { range: Range(768, 828), items: [774, 775, 794, 796, 807, 811, 821, 826], want_response: false }, ItemSet { range: Range(828, 831), items: [], want_response: false }, ItemSet { range: Range(831, 896), items: [831, 848, 865, 872, 873, 893, 894], want_response: false }, ItemSet { range: Range(896, 897), items: [], want_response: false }, ItemSet { range: Range(17, 44), items: [20, 29], want_response: true }, ItemSet { range: Range(44, 64), items: [44], want_response: true }, ItemSet { range: Range(64, 103), items: [74, 94], want_response: true }, ItemSet { range: Range(103, 113), items: [103, 109], want_response: true }, ItemSet { range: Range(344, 390), items: [346, 365], want_response: true }, ItemSet { range: Range(390, 396), items: [390], want_response: true }], wants: [173, 426, 470, 699, 700, 768, 808, 828, 847, 879, 896], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(17, 44), items: [17, 24, 30], want_response: false }, ItemSet { range: Range(44, 64), items: [58, 63], want_response: false }, ItemSet { range: Range(64, 103), items: [64, 80, 85], want_response: false }, ItemSet { range: Range(103, 113), items: [109, 110], want_response: false }, ItemSet { range: Range(344, 390), items: [344, 373, 386], want_response: false }, ItemSet { range: Range(390, 396), items: [395], want_response: false }, ItemSet { range: Range(182, 251), items: [182], want_response: true }, ItemSet { range: Range(251, 307), items: [298, 299], want_response: true }, ItemSet { range: Range(307, 344), items: [307], want_response: true }, ItemSet { range: Range(580, 634), items: [600], want_response: true }, ItemSet { range: Range(634, 699), items: [660, 669], want_response: true }], wants: [113, 142, 143, 161, 162, 174, 396, 399, 412, 418, 424, 430, 431, 433, 443, 450, 460, 485, 495, 505, 518, 542, 553, 566, 567, 575, 731, 736, 763, 774, 775, 794, 796, 807, 811, 821, 826, 831, 848, 865, 872, 873, 893, 894, 20, 29, 44, 74, 94, 103, 346, 365, 390], provide: [(173, true), (426, true), (470, true), (699, true), (700, true), (768, true), (808, true), (828, true), (847, true), (879, true), (896, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(182, 251), items: [195, 196, 215, 222], want_response: false }, ItemSet { range: Range(251, 307), items: [251, 253, 264], want_response: false }, ItemSet { range: Range(307, 344), items: [329], want_response: false }, ItemSet { range: Range(580, 634), items: [580, 588, 590], want_response: false }, ItemSet { range: Range(634, 699), items: [634, 653, 658], want_response: false }], wants: [17, 24, 30, 58, 63, 64, 80, 85, 110, 344, 373, 386, 395, 182, 298, 299, 307, 600, 660, 669], provide: [(113, true), (142, true), (143, true), (161, true), (162, true), (174, true), (396, true), (399, true), (412, true), (418, true), (424, true), (430, true), (431, true), (433, true), (443, true), (450, true), (460, true), (485, true), (495, true), (505, true), (518, true), (542, true), (553, true), (566, true), (567, true), (575, true), (731, true), (736, true), (763, true), (774, true), (775, true), (794, true), (796, true), (807, true), (811, true), (821, true), (826, true), (831, true), (848, true), (865, true), (872, true), (873, true), (893, true), (894, true), (20, true), (29, true), (44, true), (74, true), (94, true), (103, true), (346, true), (365, true), (390, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [195, 196, 215, 222, 251, 253, 264, 329, 580, 588, 590, 634, 653, 658], provide: [(17, true), (24, true), (30, true), (58, true), (63, true), (64, true), (80, true), (85, true), (110, true), (344, true), (373, true), (386, true), (395, true), (182, true), (298, true), (299, true), (307, true), (600, true), (660, true), (669, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(195, true), (196, true), (215, true), (222, true), (251, true), (253, true), (264, true), (329, true), (580, true), (588, true), (590, true), (634, true), (653, true), (658, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 24, 30, 58, 63, 64, 80, 85, 109, 110, 173, 182, 298, 299, 307, 344, 373, 386, 395, 426, 470, 559, 600, 660, 669, 699, 700, 768, 808, 828, 847, 879, 896} + [913, 918, 939, 944, 947, 959, 993, 9, 113, 142, 143, 161, 162, 174, 396, 399, 412, 418, 424, 430, 431, 433, 443, 450, 460, 485, 495, 505, 518, 542, 553, 566, 567, 575, 731, 736, 763, 774, 775, 794, 796, 807, 811, 821, 826, 831, 848, 865, 872, 873, 893, 894, 20, 29, 44, 74, 94, 103, 346, 365, 390, 195, 196, 215, 222, 251, 253, 264, 329, 580, 588, 590, 634, 653, 658]
[INFO] [stdout] b all: {9, 20, 29, 44, 74, 94, 103, 109, 113, 142, 143, 161, 162, 174, 195, 196, 215, 222, 251, 253, 264, 329, 346, 365, 390, 396, 399, 412, 418, 424, 430, 431, 433, 443, 450, 460, 485, 495, 505, 518, 542, 553, 559, 566, 567, 575, 580, 588, 590, 634, 653, 658, 731, 736, 763, 774, 775, 794, 796, 807, 811, 821, 826, 831, 848, 865, 872, 873, 893, 894, 913, 918, 939, 944, 947, 959, 993} + [173, 426, 470, 699, 700, 768, 808, 828, 847, 879, 896, 17, 24, 30, 58, 63, 64, 80, 85, 110, 344, 373, 386, 395, 182, 298, 299, 307, 600, 660, 669]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 17, 20, 24, 29, 30, 44, 58, 63, 64, 74, 80, 85, 94, 103, 109, 110, 113, 142, 143, 161, 162, 173, 174, 182, 195, 196, 215, 222, 251, 253, 264, 298, 299, 307, 329, 344, 346, 365, 373, 386, 390, 395, 396, 399, 412, 418, 424, 426, 430, 431, 433, 443, 450, 460, 470, 485, 495, 505, 518, 542, 553, 559, 566, 567, 575, 580, 588, 590, 600, 634, 653, 658, 660, 669, 699, 700, 731, 736, 763, 768, 774, 775, 794, 796, 807, 808, 811, 821, 826, 828, 831, 847, 848, 865, 872, 873, 879, 893, 894, 896, 913, 918, 939, 944, 947, 959, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 17, 20, 24, 29, 30, 44, 58, 63, 64, 74, 80, 85, 94, 103, 109, 110, 113, 142, 143, 161, 162, 173, 174, 182, 195, 196, 215, 222, 251, 253, 264, 298, 299, 307, 329, 344, 346, 365, 373, 386, 390, 395, 396, 399, 412, 418, 424, 426, 430, 431, 433, 443, 450, 460, 470, 485, 495, 505, 518, 542, 553, 559, 566, 567, 575, 580, 588, 590, 600, 634, 653, 658, 660, 669, 699, 700, 731, 736, 763, 768, 774, 775, 794, 796, 807, 808, 811, 821, 826, 828, 831, 847, 848, 865, 872, 873, 879, 893, 894, 896, 913, 918, 939, 944, 947, 959, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 17, 20, 24, 29, 30, 44, 58, 63, 64, 74, 80, 85, 94, 103, 109, 110, 113, 142, 143, 161, 162, 173, 174, 182, 195, 196, 215, 222, 251, 253, 264, 298, 299, 307, 329, 344, 346, 365, 373, 386, 390, 395, 396, 399, 412, 418, 424, 426, 430, 431, 433, 443, 450, 460, 470, 485, 495, 505, 518, 542, 553, 559, 566, 567, 575, 580, 588, 590, 600, 634, 653, 658, 660, 669, 699, 700, 731, 736, 763, 768, 774, 775, 794, 796, 807, 808, 811, 821, 826, 828, 831, 847, 848, 865, 872, 873, 879, 893, 894, 896, 913, 918, 939, 944, 947, 959, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {83, 114, 193, 246, 305, 354, 359, 371, 421, 459, 601, 622, 676, 712, 719, 769, 875, 907, 914, 918, 927, 935, 975}
[INFO] [stdout] b items: {16, 113, 187, 213, 260, 320, 401, 463, 499, 514, 551, 568, 609, 620, 645, 670, 689, 735, 750, 752, 866, 970, 980, 990, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(83, 976), fp: EncodedCountingMonoid(23, SumMonoid(13455)) }], item_sets: [ItemSet { range: Range(976, 83), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(83, 609), fp: EncodedCountingMonoid(11, SumMonoid(4089)) }, Fingerprint { range: Range(609, 976), fp: EncodedCountingMonoid(10, SumMonoid(7306)) }], item_sets: [ItemSet { range: Range(976, 83), items: [980, 990, 997, 16], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(83, 359), fp: EncodedCountingMonoid(6, SumMonoid(1295)) }, Fingerprint { range: Range(359, 609), fp: EncodedCountingMonoid(5, SumMonoid(2211)) }, Fingerprint { range: Range(609, 907), fp: EncodedCountingMonoid(6, SumMonoid(4373)) }, Fingerprint { range: Range(907, 976), fp: EncodedCountingMonoid(6, SumMonoid(5576)) }], item_sets: [], wants: [980, 990, 997, 16], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(83, 260), fp: EncodedCountingMonoid(3, SumMonoid(513)) }, Fingerprint { range: Range(359, 514), fp: EncodedCountingMonoid(3, SumMonoid(1363)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(3, SumMonoid(1633)) }, Fingerprint { range: Range(609, 735), fp: EncodedCountingMonoid(5, SumMonoid(3233)) }, Fingerprint { range: Range(735, 907), fp: EncodedCountingMonoid(4, SumMonoid(3103)) }], item_sets: [ItemSet { range: Range(260, 359), items: [260, 320], want_response: true }, ItemSet { range: Range(907, 976), items: [970], want_response: true }], wants: [], provide: [(980, true), (990, true), (997, true), (16, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(260, 359), items: [305, 354], want_response: false }, ItemSet { range: Range(907, 976), items: [907, 914, 918, 927, 935, 975], want_response: false }, ItemSet { range: Range(83, 193), items: [83, 114], want_response: true }, ItemSet { range: Range(193, 260), items: [193, 246], want_response: true }, ItemSet { range: Range(359, 421), items: [359, 371], want_response: true }, ItemSet { range: Range(421, 514), items: [421, 459], want_response: true }, ItemSet { range: Range(514, 609), items: [601], want_response: true }, ItemSet { range: Range(609, 712), items: [622, 676], want_response: true }, ItemSet { range: Range(712, 735), items: [712, 719], want_response: true }, ItemSet { range: Range(735, 907), items: [769, 875], want_response: true }], wants: [260, 320, 970], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(83, 193), items: [113, 187], want_response: false }, ItemSet { range: Range(193, 260), items: [213], want_response: false }, ItemSet { range: Range(359, 421), items: [401], want_response: false }, ItemSet { range: Range(421, 514), items: [463, 499], want_response: false }, ItemSet { range: Range(514, 609), items: [514, 551, 568], want_response: false }, ItemSet { range: Range(609, 712), items: [609, 620, 645, 670, 689], want_response: false }, ItemSet { range: Range(712, 735), items: [], want_response: false }, ItemSet { range: Range(735, 907), items: [735, 750, 752, 866], want_response: false }], wants: [305, 354, 907, 914, 918, 927, 935, 975, 83, 114, 193, 246, 359, 371, 421, 459, 601, 622, 676, 712, 719, 769, 875], provide: [(260, true), (320, true), (970, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [113, 187, 213, 401, 463, 499, 514, 551, 568, 609, 620, 645, 670, 689, 735, 750, 752, 866], provide: [(305, true), (354, true), (907, true), (914, true), (918, true), (927, true), (935, true), (975, true), (83, true), (114, true), (193, true), (246, true), (359, true), (371, true), (421, true), (459, true), (601, true), (622, true), (676, true), (712, true), (719, true), (769, true), (875, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(113, true), (187, true), (213, true), (401, true), (463, true), (499, true), (514, true), (551, true), (568, true), (609, true), (620, true), (645, true), (670, true), (689, true), (735, true), (750, true), (752, true), (866, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {83, 114, 193, 246, 305, 354, 359, 371, 421, 459, 601, 622, 676, 712, 719, 769, 875, 907, 914, 918, 927, 935, 975} + [980, 990, 997, 16, 260, 320, 970, 113, 187, 213, 401, 463, 499, 514, 551, 568, 609, 620, 645, 670, 689, 735, 750, 752, 866]
[INFO] [stdout] b all: {16, 113, 187, 213, 260, 320, 401, 463, 499, 514, 551, 568, 609, 620, 645, 670, 689, 735, 750, 752, 866, 970, 980, 990, 997} + [305, 354, 907, 914, 918, 927, 935, 975, 83, 114, 193, 246, 359, 371, 421, 459, 601, 622, 676, 712, 719, 769, 875]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [16, 83, 113, 114, 187, 193, 213, 246, 260, 305, 320, 354, 359, 371, 401, 421, 459, 463, 499, 514, 551, 568, 601, 609, 620, 622, 645, 670, 676, 689, 712, 719, 735, 750, 752, 769, 866, 875, 907, 914, 918, 927, 935, 970, 975, 980, 990, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [16, 83, 113, 114, 187, 193, 213, 246, 260, 305, 320, 354, 359, 371, 401, 421, 459, 463, 499, 514, 551, 568, 601, 609, 620, 622, 645, 670, 676, 689, 712, 719, 735, 750, 752, 769, 866, 875, 907, 914, 918, 927, 935, 970, 975, 980, 990, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [16, 83, 113, 114, 187, 193, 213, 246, 260, 305, 320, 354, 359, 371, 401, 421, 459, 463, 499, 514, 551, 568, 601, 609, 620, 622, 645, 670, 676, 689, 712, 719, 735, 750, 752, 769, 866, 875, 907, 914, 918, 927, 935, 970, 975, 980, 990, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {397, 832}
[INFO] [stdout] b items: {6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368, 410, 457, 469, 489, 504, 548, 598, 632, 655, 688, 689, 716, 719, 739, 753, 782, 820, 821, 909, 922, 928, 940, 971, 986}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(397, 833), fp: EncodedCountingMonoid(2, SumMonoid(1229)) }], item_sets: [ItemSet { range: Range(833, 397), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(397, 688), fp: EncodedCountingMonoid(9, SumMonoid(4762)) }, Fingerprint { range: Range(688, 833), fp: EncodedCountingMonoid(9, SumMonoid(6727)) }], item_sets: [ItemSet { range: Range(833, 397), items: [909, 922, 928, 940, 971, 986, 6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(397, 688), items: [397], want_response: true }, ItemSet { range: Range(688, 833), items: [832], want_response: true }], wants: [909, 922, 928, 940, 971, 986, 6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(397, 688), items: [410, 457, 469, 489, 504, 548, 598, 632, 655], want_response: false }, ItemSet { range: Range(688, 833), items: [688, 689, 716, 719, 739, 753, 782, 820, 821], want_response: false }], wants: [397, 832], provide: [(909, true), (922, true), (928, true), (940, true), (971, true), (986, true), (6, true), (7, true), (66, true), (88, true), (115, true), (121, true), (132, true), (153, true), (168, true), (169, true), (179, true), (192, true), (201, true), (234, true), (275, true), (281, true), (292, true), (293, true), (307, true), (324, true), (325, true), (329, true), (336, true), (360, true), (368, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [410, 457, 469, 489, 504, 548, 598, 632, 655, 688, 689, 716, 719, 739, 753, 782, 820, 821], provide: [(397, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(410, true), (457, true), (469, true), (489, true), (504, true), (548, true), (598, true), (632, true), (655, true), (688, true), (689, true), (716, true), (719, true), (739, true), (753, true), (782, true), (820, true), (821, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {397, 832} + [909, 922, 928, 940, 971, 986, 6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368, 410, 457, 469, 489, 504, 548, 598, 632, 655, 688, 689, 716, 719, 739, 753, 782, 820, 821]
[INFO] [stdout] b all: {6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368, 410, 457, 469, 489, 504, 548, 598, 632, 655, 688, 689, 716, 719, 739, 753, 782, 820, 821, 909, 922, 928, 940, 971, 986} + [397, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368, 397, 410, 457, 469, 489, 504, 548, 598, 632, 655, 688, 689, 716, 719, 739, 753, 782, 820, 821, 832, 909, 922, 928, 940, 971, 986]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368, 397, 410, 457, 469, 489, 504, 548, 598, 632, 655, 688, 689, 716, 719, 739, 753, 782, 820, 821, 832, 909, 922, 928, 940, 971, 986], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 66, 88, 115, 121, 132, 153, 168, 169, 179, 192, 201, 234, 275, 281, 292, 293, 307, 324, 325, 329, 336, 360, 368, 397, 410, 457, 469, 489, 504, 548, 598, 632, 655, 688, 689, 716, 719, 739, 753, 782, 820, 821, 832, 909, 922, 928, 940, 971, 986], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 6, 10, 27, 46, 66, 106, 128, 133, 145, 186, 226, 228, 248, 249, 255, 327, 334, 339, 347, 362, 368, 389, 426, 444, 486, 505, 542, 543, 567, 574, 579, 586, 596, 603, 642, 644, 649, 655, 663, 668, 725, 734, 738, 741, 765, 782, 787, 788, 792, 797, 834, 835, 844, 848, 864, 884, 889, 900, 914, 926, 932, 944, 959, 963, 990}
[INFO] [stdout] b items: {1, 6, 12, 31, 108, 113, 114, 117, 120, 148, 187, 196, 217, 248, 303, 314, 319, 322, 365, 369, 388, 410, 411, 435, 557, 609, 615, 625, 711, 713, 732, 737, 739, 775, 782, 810, 862, 946, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 991), fp: EncodedCountingMonoid(66, SumMonoid(36075)) }], item_sets: [ItemSet { range: Range(991, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 388), fp: EncodedCountingMonoid(19, SumMonoid(3609)) }, Fingerprint { range: Range(388, 991), fp: EncodedCountingMonoid(18, SumMonoid(11857)) }], item_sets: [ItemSet { range: Range(991, 3), items: [991, 1], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 226), fp: EncodedCountingMonoid(11, SumMonoid(856)) }, Fingerprint { range: Range(226, 388), fp: EncodedCountingMonoid(11, SumMonoid(3283)) }, Fingerprint { range: Range(388, 741), fp: EncodedCountingMonoid(22, SumMonoid(12958)) }, Fingerprint { range: Range(741, 991), fp: EncodedCountingMonoid(22, SumMonoid(18978)) }], item_sets: [], wants: [991, 1], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 117), fp: EncodedCountingMonoid(6, SumMonoid(384)) }, Fingerprint { range: Range(117, 226), fp: EncodedCountingMonoid(6, SumMonoid(985)) }, Fingerprint { range: Range(226, 322), fp: EncodedCountingMonoid(4, SumMonoid(1184)) }, Fingerprint { range: Range(322, 388), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(388, 625), fp: EncodedCountingMonoid(7, SumMonoid(3425)) }, Fingerprint { range: Range(625, 741), fp: EncodedCountingMonoid(6, SumMonoid(4257)) }, Fingerprint { range: Range(741, 862), fp: EncodedCountingMonoid(3, SumMonoid(2367)) }], item_sets: [ItemSet { range: Range(862, 991), items: [862, 946], want_response: true }], wants: [], provide: [(991, true), (1, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 46), fp: EncodedCountingMonoid(4, SumMonoid(46)) }, Fingerprint { range: Range(46, 117), fp: EncodedCountingMonoid(3, SumMonoid(218)) }, Fingerprint { range: Range(226, 249), fp: EncodedCountingMonoid(3, SumMonoid(702)) }, Fingerprint { range: Range(322, 347), fp: EncodedCountingMonoid(3, SumMonoid(1000)) }, Fingerprint { range: Range(347, 388), fp: EncodedCountingMonoid(3, SumMonoid(1077)) }, Fingerprint { range: Range(388, 567), fp: EncodedCountingMonoid(7, SumMonoid(3335)) }, Fingerprint { range: Range(567, 625), fp: EncodedCountingMonoid(6, SumMonoid(3505)) }, Fingerprint { range: Range(625, 668), fp: EncodedCountingMonoid(5, SumMonoid(3253)) }, Fingerprint { range: Range(668, 741), fp: EncodedCountingMonoid(4, SumMonoid(2865)) }, Fingerprint { range: Range(741, 797), fp: EncodedCountingMonoid(6, SumMonoid(4655)) }, Fingerprint { range: Range(797, 862), fp: EncodedCountingMonoid(5, SumMonoid(4158)) }], item_sets: [ItemSet { range: Range(862, 991), items: [864, 884, 889, 900, 914, 926, 932, 944, 959, 963, 990], want_response: false }, ItemSet { range: Range(117, 145), items: [128, 133], want_response: true }, ItemSet { range: Range(145, 226), items: [145, 186], want_response: true }, ItemSet { range: Range(249, 322), items: [249, 255], want_response: true }], wants: [862, 946], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(388, 435), fp: EncodedCountingMonoid(3, SumMonoid(1209)) }, Fingerprint { range: Range(668, 737), fp: EncodedCountingMonoid(3, SumMonoid(2156)) }], item_sets: [ItemSet { range: Range(117, 145), items: [117, 120], want_response: false }, ItemSet { range: Range(145, 226), items: [148, 187, 196, 217], want_response: false }, ItemSet { range: Range(249, 322), items: [303, 314, 319], want_response: false }, ItemSet { range: Range(3, 31), items: [6, 12], want_response: true }, ItemSet { range: Range(31, 46), items: [31], want_response: true }, ItemSet { range: Range(46, 114), items: [108, 113], want_response: true }, ItemSet { range: Range(114, 117), items: [114], want_response: true }, ItemSet { range: Range(226, 249), items: [248], want_response: true }, ItemSet { range: Range(322, 347), items: [322], want_response: true }, ItemSet { range: Range(347, 388), items: [365, 369], want_response: true }, ItemSet { range: Range(435, 567), items: [435, 557], want_response: true }, ItemSet { range: Range(567, 625), items: [609, 615], want_response: true }, ItemSet { range: Range(625, 668), items: [625], want_response: true }, ItemSet { range: Range(737, 741), items: [737, 739], want_response: true }, ItemSet { range: Range(741, 797), items: [775, 782], want_response: true }, ItemSet { range: Range(797, 862), items: [810], want_response: true }], wants: [864, 884, 889, 900, 914, 926, 932, 944, 959, 963, 990, 128, 133, 145, 186, 249, 255], provide: [(862, true), (946, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 31), items: [3, 6, 10, 27], want_response: false }, ItemSet { range: Range(31, 46), items: [], want_response: false }, ItemSet { range: Range(46, 114), items: [46, 66, 106], want_response: false }, ItemSet { range: Range(114, 117), items: [], want_response: false }, ItemSet { range: Range(226, 249), items: [226, 228, 248], want_response: false }, ItemSet { range: Range(322, 347), items: [327, 334, 339], want_response: false }, ItemSet { range: Range(347, 388), items: [347, 362, 368], want_response: false }, ItemSet { range: Range(435, 567), items: [444, 486, 505, 542, 543], want_response: false }, ItemSet { range: Range(567, 625), items: [567, 574, 579, 586, 596, 603], want_response: false }, ItemSet { range: Range(625, 668), items: [642, 644, 649, 655, 663], want_response: false }, ItemSet { range: Range(737, 741), items: [738], want_response: false }, ItemSet { range: Range(741, 797), items: [741, 765, 782, 787, 788, 792], want_response: false }, ItemSet { range: Range(797, 862), items: [797, 834, 835, 844, 848], want_response: false }, ItemSet { range: Range(388, 435), items: [389, 426], want_response: true }, ItemSet { range: Range(668, 734), items: [668, 725], want_response: true }, ItemSet { range: Range(734, 737), items: [734], want_response: true }], wants: [117, 120, 148, 187, 196, 217, 303, 314, 319, 12, 31, 108, 113, 114, 322, 365, 369, 435, 557, 609, 615, 625, 737, 739, 775, 810], provide: [(864, true), (884, true), (889, true), (900, true), (914, true), (926, true), (932, true), (944, true), (959, true), (963, true), (990, true), (128, true), (133, true), (145, true), (186, true), (249, true), (255, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(388, 435), items: [388, 410, 411], want_response: false }, ItemSet { range: Range(668, 734), items: [711, 713, 732], want_response: false }, ItemSet { range: Range(734, 737), items: [], want_response: false }], wants: [3, 10, 27, 46, 66, 106, 226, 228, 327, 334, 339, 347, 362, 368, 444, 486, 505, 542, 543, 567, 574, 579, 586, 596, 603, 642, 644, 649, 655, 663, 738, 741, 765, 787, 788, 792, 797, 834, 835, 844, 848, 389, 426, 668, 725, 734], provide: [(117, true), (120, true), (148, true), (187, true), (196, true), (217, true), (303, true), (314, true), (319, true), (12, true), (31, true), (108, true), (113, true), (114, true), (322, true), (365, true), (369, true), (435, true), (557, true), (609, true), (615, true), (625, true), (737, true), (739, true), (775, true), (810, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [388, 410, 411, 711, 713, 732], provide: [(3, true), (10, true), (27, true), (46, true), (66, true), (106, true), (226, true), (228, true), (327, true), (334, true), (339, true), (347, true), (362, true), (368, true), (444, true), (486, true), (505, true), (542, true), (543, true), (567, true), (574, true), (579, true), (586, true), (596, true), (603, true), (642, true), (644, true), (649, true), (655, true), (663, true), (738, true), (741, true), (765, true), (787, true), (788, true), (792, true), (797, true), (834, true), (835, true), (844, true), (848, true), (389, true), (426, true), (668, true), (725, true), (734, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(388, true), (410, true), (411, true), (711, true), (713, true), (732, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 6, 10, 27, 46, 66, 106, 128, 133, 145, 186, 226, 228, 248, 249, 255, 327, 334, 339, 347, 362, 368, 389, 426, 444, 486, 505, 542, 543, 567, 574, 579, 586, 596, 603, 642, 644, 649, 655, 663, 668, 725, 734, 738, 741, 765, 782, 787, 788, 792, 797, 834, 835, 844, 848, 864, 884, 889, 900, 914, 926, 932, 944, 959, 963, 990} + [991, 1, 862, 946, 117, 120, 148, 187, 196, 217, 303, 314, 319, 12, 31, 108, 113, 114, 322, 365, 369, 435, 557, 609, 615, 625, 737, 739, 775, 810, 388, 410, 411, 711, 713, 732]
[INFO] [stdout] b all: {1, 6, 12, 31, 108, 113, 114, 117, 120, 148, 187, 196, 217, 248, 303, 314, 319, 322, 365, 369, 388, 410, 411, 435, 557, 609, 615, 625, 711, 713, 732, 737, 739, 775, 782, 810, 862, 946, 991} + [864, 884, 889, 900, 914, 926, 932, 944, 959, 963, 990, 128, 133, 145, 186, 249, 255, 3, 10, 27, 46, 66, 106, 226, 228, 327, 334, 339, 347, 362, 368, 444, 486, 505, 542, 543, 567, 574, 579, 586, 596, 603, 642, 644, 649, 655, 663, 738, 741, 765, 787, 788, 792, 797, 834, 835, 844, 848, 389, 426, 668, 725, 734]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 3, 6, 10, 12, 27, 31, 46, 66, 106, 108, 113, 114, 117, 120, 128, 133, 145, 148, 186, 187, 196, 217, 226, 228, 248, 249, 255, 303, 314, 319, 322, 327, 334, 339, 347, 362, 365, 368, 369, 388, 389, 410, 411, 426, 435, 444, 486, 505, 542, 543, 557, 567, 574, 579, 586, 596, 603, 609, 615, 625, 642, 644, 649, 655, 663, 668, 711, 713, 725, 732, 734, 737, 738, 739, 741, 765, 775, 782, 787, 788, 792, 797, 810, 834, 835, 844, 848, 862, 864, 884, 889, 900, 914, 926, 932, 944, 946, 959, 963, 990, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 3, 6, 10, 12, 27, 31, 46, 66, 106, 108, 113, 114, 117, 120, 128, 133, 145, 148, 186, 187, 196, 217, 226, 228, 248, 249, 255, 303, 314, 319, 322, 327, 334, 339, 347, 362, 365, 368, 369, 388, 389, 410, 411, 426, 435, 444, 486, 505, 542, 543, 557, 567, 574, 579, 586, 596, 603, 609, 615, 625, 642, 644, 649, 655, 663, 668, 711, 713, 725, 732, 734, 737, 738, 739, 741, 765, 775, 782, 787, 788, 792, 797, 810, 834, 835, 844, 848, 862, 864, 884, 889, 900, 914, 926, 932, 944, 946, 959, 963, 990, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 3, 6, 10, 12, 27, 31, 46, 66, 106, 108, 113, 114, 117, 120, 128, 133, 145, 148, 186, 187, 196, 217, 226, 228, 248, 249, 255, 303, 314, 319, 322, 327, 334, 339, 347, 362, 365, 368, 369, 388, 389, 410, 411, 426, 435, 444, 486, 505, 542, 543, 557, 567, 574, 579, 586, 596, 603, 609, 615, 625, 642, 644, 649, 655, 663, 668, 711, 713, 725, 732, 734, 737, 738, 739, 741, 765, 775, 782, 787, 788, 792, 797, 810, 834, 835, 844, 848, 862, 864, 884, 889, 900, 914, 926, 932, 944, 946, 959, 963, 990, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {125, 129, 136, 142, 153, 156, 178, 188, 211, 234, 239, 264, 296, 301, 320, 357, 375, 436, 437, 474, 494, 498, 505, 511, 518, 534, 547, 678, 731, 830, 863, 873, 895, 898, 912, 921, 981}
[INFO] [stdout] b items: {53, 57, 68, 75, 78, 82, 85, 135, 150, 198, 221, 232, 241, 265, 266, 285, 286, 297, 299, 302, 336, 382, 393, 411, 421, 435, 470, 476, 494, 495, 496, 502, 543, 554, 562, 580, 588, 592, 594, 619, 620, 634, 645, 657, 667, 669, 680, 694, 709, 719, 723, 732, 746, 758, 764, 788, 804, 811, 818, 831, 854, 885, 904, 905, 908, 914, 933, 943, 983}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(125, 982), fp: EncodedCountingMonoid(37, SumMonoid(17340)) }], item_sets: [ItemSet { range: Range(982, 125), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(125, 594), fp: EncodedCountingMonoid(31, SumMonoid(11907)) }, Fingerprint { range: Range(594, 982), fp: EncodedCountingMonoid(30, SumMonoid(22928)) }], item_sets: [ItemSet { range: Range(982, 125), items: [983, 53, 57, 68, 75, 78, 82, 85], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(125, 320), fp: EncodedCountingMonoid(14, SumMonoid(2752)) }, Fingerprint { range: Range(320, 594), fp: EncodedCountingMonoid(13, SumMonoid(6006)) }, Fingerprint { range: Range(594, 895), fp: EncodedCountingMonoid(5, SumMonoid(3975)) }, Fingerprint { range: Range(895, 982), fp: EncodedCountingMonoid(5, SumMonoid(4607)) }], item_sets: [], wants: [983, 53, 57, 68, 75, 78, 82, 85], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(125, 266), fp: EncodedCountingMonoid(7, SumMonoid(1442)) }, Fingerprint { range: Range(266, 320), fp: EncodedCountingMonoid(6, SumMonoid(1735)) }, Fingerprint { range: Range(320, 495), fp: EncodedCountingMonoid(9, SumMonoid(3818)) }, Fingerprint { range: Range(495, 594), fp: EncodedCountingMonoid(9, SumMonoid(4912)) }, Fingerprint { range: Range(594, 723), fp: EncodedCountingMonoid(12, SumMonoid(7907)) }, Fingerprint { range: Range(723, 895), fp: EncodedCountingMonoid(12, SumMonoid(9514)) }, Fingerprint { range: Range(895, 914), fp: EncodedCountingMonoid(3, SumMonoid(2717)) }, Fingerprint { range: Range(914, 982), fp: EncodedCountingMonoid(3, SumMonoid(2790)) }], item_sets: [], wants: [], provide: [(983, true), (53, true), (57, true), (68, true), (75, true), (78, true), (82, true), (85, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(125, 178), fp: EncodedCountingMonoid(6, SumMonoid(841)) }, Fingerprint { range: Range(178, 266), fp: EncodedCountingMonoid(6, SumMonoid(1314)) }, Fingerprint { range: Range(320, 437), fp: EncodedCountingMonoid(4, SumMonoid(1488)) }, Fingerprint { range: Range(437, 495), fp: EncodedCountingMonoid(3, SumMonoid(1405)) }, Fingerprint { range: Range(495, 518), fp: EncodedCountingMonoid(3, SumMonoid(1514)) }, Fingerprint { range: Range(518, 594), fp: EncodedCountingMonoid(3, SumMonoid(1599)) }], item_sets: [ItemSet { range: Range(266, 320), items: [296, 301], want_response: true }, ItemSet { range: Range(594, 723), items: [678], want_response: true }, ItemSet { range: Range(723, 863), items: [731, 830], want_response: true }, ItemSet { range: Range(863, 895), items: [863, 873], want_response: true }, ItemSet { range: Range(895, 912), items: [895, 898], want_response: true }, ItemSet { range: Range(912, 914), items: [912], want_response: true }, ItemSet { range: Range(914, 982), items: [921, 981], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(178, 241), fp: EncodedCountingMonoid(3, SumMonoid(651)) }, Fingerprint { range: Range(320, 411), fp: EncodedCountingMonoid(3, SumMonoid(1111)) }, Fingerprint { range: Range(411, 437), fp: EncodedCountingMonoid(3, SumMonoid(1267)) }, Fingerprint { range: Range(518, 580), fp: EncodedCountingMonoid(3, SumMonoid(1659)) }, Fingerprint { range: Range(580, 594), fp: EncodedCountingMonoid(3, SumMonoid(1760)) }], item_sets: [ItemSet { range: Range(266, 320), items: [266, 285, 286, 297, 299, 302], want_response: false }, ItemSet { range: Range(594, 723), items: [594, 619, 620, 634, 645, 657, 667, 669, 680, 694, 709, 719], want_response: false }, ItemSet { range: Range(723, 863), items: [723, 732, 746, 758, 764, 788, 804, 811, 818, 831, 854], want_response: false }, ItemSet { range: Range(863, 895), items: [885], want_response: false }, ItemSet { range: Range(895, 912), items: [904, 905, 908], want_response: false }, ItemSet { range: Range(912, 914), items: [], want_response: false }, ItemSet { range: Range(914, 982), items: [914, 933, 943], want_response: false }, ItemSet { range: Range(125, 178), items: [135, 150], want_response: true }, ItemSet { range: Range(241, 266), items: [241, 265], want_response: true }, ItemSet { range: Range(437, 494), items: [470, 476], want_response: true }, ItemSet { range: Range(494, 495), items: [494], want_response: true }, ItemSet { range: Range(495, 502), items: [495, 496], want_response: true }, ItemSet { range: Range(502, 518), items: [502], want_response: true }], wants: [296, 301, 678, 731, 830, 863, 873, 895, 898, 912, 921, 981], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(178, 234), fp: EncodedCountingMonoid(3, SumMonoid(577)) }], item_sets: [ItemSet { range: Range(125, 178), items: [125, 129, 136, 142, 153, 156], want_response: false }, ItemSet { range: Range(241, 266), items: [264], want_response: false }, ItemSet { range: Range(437, 494), items: [437, 474], want_response: false }, ItemSet { range: Range(494, 495), items: [494], want_response: false }, ItemSet { range: Range(495, 502), items: [498], want_response: false }, ItemSet { range: Range(502, 518), items: [505, 511], want_response: false }, ItemSet { range: Range(234, 241), items: [234, 239], want_response: true }, ItemSet { range: Range(320, 375), items: [320, 357], want_response: true }, ItemSet { range: Range(375, 411), items: [375], want_response: true }, ItemSet { range: Range(411, 437), items: [436], want_response: true }, ItemSet { range: Range(518, 547), items: [518, 534], want_response: true }, ItemSet { range: Range(547, 580), items: [547], want_response: true }, ItemSet { range: Range(580, 594), items: [], want_response: true }], wants: [266, 285, 286, 297, 299, 302, 594, 619, 620, 634, 645, 657, 667, 669, 680, 694, 709, 719, 723, 732, 746, 758, 764, 788, 804, 811, 818, 831, 854, 885, 904, 905, 908, 914, 933, 943, 135, 150, 241, 265, 470, 476, 495, 496, 502], provide: [(296, true), (301, true), (678, true), (731, true), (830, true), (863, true), (873, true), (895, true), (898, true), (912, true), (921, true), (981, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(234, 241), items: [], want_response: false }, ItemSet { range: Range(320, 375), items: [336], want_response: false }, ItemSet { range: Range(375, 411), items: [382, 393], want_response: false }, ItemSet { range: Range(411, 437), items: [411, 421, 435], want_response: false }, ItemSet { range: Range(518, 547), items: [543], want_response: false }, ItemSet { range: Range(547, 580), items: [554, 562], want_response: false }, ItemSet { range: Range(580, 594), items: [580, 588, 592], want_response: false }, ItemSet { range: Range(178, 232), items: [198, 221], want_response: true }, ItemSet { range: Range(232, 234), items: [232], want_response: true }], wants: [125, 129, 136, 142, 153, 156, 264, 437, 474, 498, 505, 511, 234, 239, 320, 357, 375, 436, 518, 534, 547], provide: [(266, true), (285, true), (286, true), (297, true), (299, true), (302, true), (594, true), (619, true), (620, true), (634, true), (645, true), (657, true), (667, true), (669, true), (680, true), (694, true), (709, true), (719, true), (723, true), (732, true), (746, true), (758, true), (764, true), (788, true), (804, true), (811, true), (818, true), (831, true), (854, true), (885, true), (904, true), (905, true), (908, true), (914, true), (933, true), (943, true), (135, true), (150, true), (241, true), (265, true), (470, true), (476, true), (495, true), (496, true), (502, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(178, 232), items: [178, 188, 211], want_response: false }, ItemSet { range: Range(232, 234), items: [], want_response: false }], wants: [336, 382, 393, 411, 421, 435, 543, 554, 562, 580, 588, 592, 198, 221, 232], provide: [(125, true), (129, true), (136, true), (142, true), (153, true), (156, true), (264, true), (437, true), (474, true), (498, true), (505, true), (511, true), (234, true), (239, true), (320, true), (357, true), (375, true), (436, true), (518, true), (534, true), (547, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [178, 188, 211], provide: [(336, true), (382, true), (393, true), (411, true), (421, true), (435, true), (543, true), (554, true), (562, true), (580, true), (588, true), (592, true), (198, true), (221, true), (232, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(178, true), (188, true), (211, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {125, 129, 136, 142, 153, 156, 178, 188, 211, 234, 239, 264, 296, 301, 320, 357, 375, 436, 437, 474, 494, 498, 505, 511, 518, 534, 547, 678, 731, 830, 863, 873, 895, 898, 912, 921, 981} + [983, 53, 57, 68, 75, 78, 82, 85, 266, 285, 286, 297, 299, 302, 594, 619, 620, 634, 645, 657, 667, 669, 680, 694, 709, 719, 723, 732, 746, 758, 764, 788, 804, 811, 818, 831, 854, 885, 904, 905, 908, 914, 933, 943, 135, 150, 241, 265, 470, 476, 495, 496, 502, 336, 382, 393, 411, 421, 435, 543, 554, 562, 580, 588, 592, 198, 221, 232]
[INFO] [stdout] b all: {53, 57, 68, 75, 78, 82, 85, 135, 150, 198, 221, 232, 241, 265, 266, 285, 286, 297, 299, 302, 336, 382, 393, 411, 421, 435, 470, 476, 494, 495, 496, 502, 543, 554, 562, 580, 588, 592, 594, 619, 620, 634, 645, 657, 667, 669, 680, 694, 709, 719, 723, 732, 746, 758, 764, 788, 804, 811, 818, 831, 854, 885, 904, 905, 908, 914, 933, 943, 983} + [296, 301, 678, 731, 830, 863, 873, 895, 898, 912, 921, 981, 125, 129, 136, 142, 153, 156, 264, 437, 474, 498, 505, 511, 234, 239, 320, 357, 375, 436, 518, 534, 547, 178, 188, 211]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [53, 57, 68, 75, 78, 82, 85, 125, 129, 135, 136, 142, 150, 153, 156, 178, 188, 198, 211, 221, 232, 234, 239, 241, 264, 265, 266, 285, 286, 296, 297, 299, 301, 302, 320, 336, 357, 375, 382, 393, 411, 421, 435, 436, 437, 470, 474, 476, 494, 495, 496, 498, 502, 505, 511, 518, 534, 543, 547, 554, 562, 580, 588, 592, 594, 619, 620, 634, 645, 657, 667, 669, 678, 680, 694, 709, 719, 723, 731, 732, 746, 758, 764, 788, 804, 811, 818, 830, 831, 854, 863, 873, 885, 895, 898, 904, 905, 908, 912, 914, 921, 933, 943, 981, 983]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [53, 57, 68, 75, 78, 82, 85, 125, 129, 135, 136, 142, 150, 153, 156, 178, 188, 198, 211, 221, 232, 234, 239, 241, 264, 265, 266, 285, 286, 296, 297, 299, 301, 302, 320, 336, 357, 375, 382, 393, 411, 421, 435, 436, 437, 470, 474, 476, 494, 495, 496, 498, 502, 505, 511, 518, 534, 543, 547, 554, 562, 580, 588, 592, 594, 619, 620, 634, 645, 657, 667, 669, 678, 680, 694, 709, 719, 723, 731, 732, 746, 758, 764, 788, 804, 811, 818, 830, 831, 854, 863, 873, 885, 895, 898, 904, 905, 908, 912, 914, 921, 933, 943, 981, 983], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [53, 57, 68, 75, 78, 82, 85, 125, 129, 135, 136, 142, 150, 153, 156, 178, 188, 198, 211, 221, 232, 234, 239, 241, 264, 265, 266, 285, 286, 296, 297, 299, 301, 302, 320, 336, 357, 375, 382, 393, 411, 421, 435, 436, 437, 470, 474, 476, 494, 495, 496, 498, 502, 505, 511, 518, 534, 543, 547, 554, 562, 580, 588, 592, 594, 619, 620, 634, 645, 657, 667, 669, 678, 680, 694, 709, 719, 723, 731, 732, 746, 758, 764, 788, 804, 811, 818, 830, 831, 854, 863, 873, 885, 895, 898, 904, 905, 908, 912, 914, 921, 933, 943, 981, 983], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {27, 44, 55, 60, 161, 183, 201, 218, 299, 302, 325, 349, 357, 364, 365, 410, 411, 455, 459, 464, 494, 506, 510, 514, 557, 562, 566, 576, 611, 640, 651, 664, 665, 695, 756, 765, 774, 786, 788, 803, 809, 849, 863, 876, 951, 956, 976}
[INFO] [stdout] b items: {51, 87, 94, 122, 128, 136, 187, 202, 225, 264, 322, 323, 365, 460, 509, 516, 520, 546, 555, 637, 669, 701, 704, 716, 719, 749, 755, 794, 795, 803, 808, 846, 876, 893, 903, 943}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 977), fp: EncodedCountingMonoid(47, SumMonoid(24672)) }], item_sets: [ItemSet { range: Range(977, 27), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(27, 555), fp: EncodedCountingMonoid(18, SumMonoid(5057)) }, Fingerprint { range: Range(555, 977), fp: EncodedCountingMonoid(18, SumMonoid(13866)) }], item_sets: [ItemSet { range: Range(977, 27), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 357), fp: EncodedCountingMonoid(12, SumMonoid(2224)) }, Fingerprint { range: Range(357, 555), fp: EncodedCountingMonoid(12, SumMonoid(5309)) }, Fingerprint { range: Range(555, 774), fp: EncodedCountingMonoid(12, SumMonoid(7708)) }, Fingerprint { range: Range(774, 977), fp: EncodedCountingMonoid(11, SumMonoid(9431)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(27, 187), fp: EncodedCountingMonoid(6, SumMonoid(618)) }, Fingerprint { range: Range(187, 357), fp: EncodedCountingMonoid(6, SumMonoid(1523)) }, Fingerprint { range: Range(357, 516), fp: EncodedCountingMonoid(3, SumMonoid(1334)) }, Fingerprint { range: Range(516, 555), fp: EncodedCountingMonoid(3, SumMonoid(1582)) }, Fingerprint { range: Range(555, 716), fp: EncodedCountingMonoid(5, SumMonoid(3266)) }, Fingerprint { range: Range(716, 774), fp: EncodedCountingMonoid(4, SumMonoid(2939)) }, Fingerprint { range: Range(774, 876), fp: EncodedCountingMonoid(5, SumMonoid(4046)) }, Fingerprint { range: Range(876, 977), fp: EncodedCountingMonoid(4, SumMonoid(3615)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 60), fp: EncodedCountingMonoid(3, SumMonoid(126)) }, Fingerprint { range: Range(60, 187), fp: EncodedCountingMonoid(3, SumMonoid(404)) }, Fingerprint { range: Range(187, 302), fp: EncodedCountingMonoid(3, SumMonoid(718)) }, Fingerprint { range: Range(302, 357), fp: EncodedCountingMonoid(3, SumMonoid(976)) }, Fingerprint { range: Range(357, 459), fp: EncodedCountingMonoid(6, SumMonoid(2362)) }, Fingerprint { range: Range(459, 516), fp: EncodedCountingMonoid(6, SumMonoid(2947)) }, Fingerprint { range: Range(555, 640), fp: EncodedCountingMonoid(5, SumMonoid(2872)) }, Fingerprint { range: Range(640, 716), fp: EncodedCountingMonoid(5, SumMonoid(3315)) }, Fingerprint { range: Range(774, 809), fp: EncodedCountingMonoid(4, SumMonoid(3151)) }, Fingerprint { range: Range(809, 876), fp: EncodedCountingMonoid(3, SumMonoid(2521)) }], item_sets: [ItemSet { range: Range(516, 555), items: [], want_response: true }, ItemSet { range: Range(716, 774), items: [756, 765], want_response: true }, ItemSet { range: Range(876, 956), items: [876, 951], want_response: true }, ItemSet { range: Range(956, 977), items: [956, 976], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(60, 128), fp: EncodedCountingMonoid(3, SumMonoid(303)) }], item_sets: [ItemSet { range: Range(516, 555), items: [516, 520, 546], want_response: false }, ItemSet { range: Range(716, 774), items: [716, 719, 749, 755], want_response: false }, ItemSet { range: Range(876, 956), items: [876, 893, 903, 943], want_response: false }, ItemSet { range: Range(956, 977), items: [], want_response: false }, ItemSet { range: Range(27, 60), items: [51], want_response: true }, ItemSet { range: Range(128, 187), items: [128, 136], want_response: true }, ItemSet { range: Range(187, 225), items: [187, 202], want_response: true }, ItemSet { range: Range(225, 302), items: [225, 264], want_response: true }, ItemSet { range: Range(302, 357), items: [322, 323], want_response: true }, ItemSet { range: Range(357, 459), items: [365], want_response: true }, ItemSet { range: Range(459, 516), items: [460, 509], want_response: true }, ItemSet { range: Range(555, 640), items: [555, 637], want_response: true }, ItemSet { range: Range(640, 704), items: [669, 701], want_response: true }, ItemSet { range: Range(704, 716), items: [704], want_response: true }, ItemSet { range: Range(774, 803), items: [794, 795], want_response: true }, ItemSet { range: Range(803, 809), items: [803, 808], want_response: true }, ItemSet { range: Range(809, 876), items: [846], want_response: true }], wants: [756, 765, 951, 956, 976], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(27, 60), items: [27, 44, 55], want_response: false }, ItemSet { range: Range(128, 187), items: [161, 183], want_response: false }, ItemSet { range: Range(187, 225), items: [201, 218], want_response: false }, ItemSet { range: Range(225, 302), items: [299], want_response: false }, ItemSet { range: Range(302, 357), items: [302, 325, 349], want_response: false }, ItemSet { range: Range(357, 459), items: [357, 364, 365, 410, 411, 455], want_response: false }, ItemSet { range: Range(459, 516), items: [459, 464, 494, 506, 510, 514], want_response: false }, ItemSet { range: Range(555, 640), items: [557, 562, 566, 576, 611], want_response: false }, ItemSet { range: Range(640, 704), items: [640, 651, 664, 665, 695], want_response: false }, ItemSet { range: Range(704, 716), items: [], want_response: false }, ItemSet { range: Range(774, 803), items: [774, 786, 788], want_response: false }, ItemSet { range: Range(803, 809), items: [803], want_response: false }, ItemSet { range: Range(809, 876), items: [809, 849, 863], want_response: false }, ItemSet { range: Range(60, 128), items: [60], want_response: true }], wants: [516, 520, 546, 716, 719, 749, 755, 893, 903, 943, 51, 128, 136, 187, 202, 225, 264, 322, 323, 460, 509, 555, 637, 669, 701, 704, 794, 795, 808, 846], provide: [(756, true), (765, true), (951, true), (956, true), (976, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(60, 128), items: [87, 94, 122], want_response: false }], wants: [27, 44, 55, 161, 183, 201, 218, 299, 302, 325, 349, 357, 364, 410, 411, 455, 459, 464, 494, 506, 510, 514, 557, 562, 566, 576, 611, 640, 651, 664, 665, 695, 774, 786, 788, 809, 849, 863, 60], provide: [(516, true), (520, true), (546, true), (716, true), (719, true), (749, true), (755, true), (893, true), (903, true), (943, true), (51, true), (128, true), (136, true), (187, true), (202, true), (225, true), (264, true), (322, true), (323, true), (460, true), (509, true), (555, true), (637, true), (669, true), (701, true), (704, true), (794, true), (795, true), (808, true), (846, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 122], provide: [(27, true), (44, true), (55, true), (161, true), (183, true), (201, true), (218, true), (299, true), (302, true), (325, true), (349, true), (357, true), (364, true), (410, true), (411, true), (455, true), (459, true), (464, true), (494, true), (506, true), (510, true), (514, true), (557, true), (562, true), (566, true), (576, true), (611, true), (640, true), (651, true), (664, true), (665, true), (695, true), (774, true), (786, true), (788, true), (809, true), (849, true), (863, true), (60, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (122, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {27, 44, 55, 60, 161, 183, 201, 218, 299, 302, 325, 349, 357, 364, 365, 410, 411, 455, 459, 464, 494, 506, 510, 514, 557, 562, 566, 576, 611, 640, 651, 664, 665, 695, 756, 765, 774, 786, 788, 803, 809, 849, 863, 876, 951, 956, 976} + [516, 520, 546, 716, 719, 749, 755, 893, 903, 943, 51, 128, 136, 187, 202, 225, 264, 322, 323, 460, 509, 555, 637, 669, 701, 704, 794, 795, 808, 846, 87, 94, 122]
[INFO] [stdout] b all: {51, 87, 94, 122, 128, 136, 187, 202, 225, 264, 322, 323, 365, 460, 509, 516, 520, 546, 555, 637, 669, 701, 704, 716, 719, 749, 755, 794, 795, 803, 808, 846, 876, 893, 903, 943} + [756, 765, 951, 956, 976, 27, 44, 55, 161, 183, 201, 218, 299, 302, 325, 349, 357, 364, 410, 411, 455, 459, 464, 494, 506, 510, 514, 557, 562, 566, 576, 611, 640, 651, 664, 665, 695, 774, 786, 788, 809, 849, 863, 60]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [27, 44, 51, 55, 60, 87, 94, 122, 128, 136, 161, 183, 187, 201, 202, 218, 225, 264, 299, 302, 322, 323, 325, 349, 357, 364, 365, 410, 411, 455, 459, 460, 464, 494, 506, 509, 510, 514, 516, 520, 546, 555, 557, 562, 566, 576, 611, 637, 640, 651, 664, 665, 669, 695, 701, 704, 716, 719, 749, 755, 756, 765, 774, 786, 788, 794, 795, 803, 808, 809, 846, 849, 863, 876, 893, 903, 943, 951, 956, 976]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [27, 44, 51, 55, 60, 87, 94, 122, 128, 136, 161, 183, 187, 201, 202, 218, 225, 264, 299, 302, 322, 323, 325, 349, 357, 364, 365, 410, 411, 455, 459, 460, 464, 494, 506, 509, 510, 514, 516, 520, 546, 555, 557, 562, 566, 576, 611, 637, 640, 651, 664, 665, 669, 695, 701, 704, 716, 719, 749, 755, 756, 765, 774, 786, 788, 794, 795, 803, 808, 809, 846, 849, 863, 876, 893, 903, 943, 951, 956, 976], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [27, 44, 51, 55, 60, 87, 94, 122, 128, 136, 161, 183, 187, 201, 202, 218, 225, 264, 299, 302, 322, 323, 325, 349, 357, 364, 365, 410, 411, 455, 459, 460, 464, 494, 506, 509, 510, 514, 516, 520, 546, 555, 557, 562, 566, 576, 611, 637, 640, 651, 664, 665, 669, 695, 701, 704, 716, 719, 749, 755, 756, 765, 774, 786, 788, 794, 795, 803, 808, 809, 846, 849, 863, 876, 893, 903, 943, 951, 956, 976], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {498, 507, 524, 596, 661, 919}
[INFO] [stdout] b items: {1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487, 526, 541, 542, 550, 563, 573, 601, 618, 619, 624, 645, 647, 649, 658, 690, 707, 736, 737, 768, 784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905, 944, 946, 961, 966, 981}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(498, 920), fp: EncodedCountingMonoid(6, SumMonoid(3705)) }], item_sets: [ItemSet { range: Range(920, 498), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(498, 784), fp: EncodedCountingMonoid(19, SumMonoid(11994)) }, Fingerprint { range: Range(784, 920), fp: EncodedCountingMonoid(18, SumMonoid(15468)) }], item_sets: [ItemSet { range: Range(920, 498), items: [944, 946, 961, 966, 981, 1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(498, 596), fp: EncodedCountingMonoid(3, SumMonoid(1529)) }], item_sets: [ItemSet { range: Range(596, 784), items: [596, 661], want_response: true }, ItemSet { range: Range(784, 920), items: [919], want_response: true }], wants: [944, 946, 961, 966, 981, 1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(498, 550), fp: EncodedCountingMonoid(3, SumMonoid(1609)) }, Fingerprint { range: Range(550, 596), fp: EncodedCountingMonoid(3, SumMonoid(1686)) }], item_sets: [ItemSet { range: Range(596, 784), items: [601, 618, 619, 624, 645, 647, 649, 658, 690, 707, 736, 737, 768], want_response: false }, ItemSet { range: Range(784, 920), items: [784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905], want_response: false }], wants: [596, 661, 919], provide: [(944, true), (946, true), (961, true), (966, true), (981, true), (1, true), (8, true), (14, true), (18, true), (25, true), (26, true), (28, true), (37, true), (49, true), (56, true), (57, true), (71, true), (80, true), (97, true), (100, true), (111, true), (115, true), (154, true), (157, true), (158, true), (191, true), (196, true), (231, true), (252, true), (294, true), (302, true), (348, true), (352, true), (362, true), (364, true), (384, true), (391, true), (425, true), (431, true), (464, true), (487, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(498, 524), items: [498, 507], want_response: true }, ItemSet { range: Range(524, 550), items: [524], want_response: true }, ItemSet { range: Range(550, 596), items: [], want_response: true }], wants: [601, 618, 619, 624, 645, 647, 649, 658, 690, 707, 736, 737, 768, 784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905], provide: [(596, true), (661, true), (919, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(498, 524), items: [], want_response: false }, ItemSet { range: Range(524, 550), items: [526, 541, 542], want_response: false }, ItemSet { range: Range(550, 596), items: [550, 563, 573], want_response: false }], wants: [498, 507, 524], provide: [(601, true), (618, true), (619, true), (624, true), (645, true), (647, true), (649, true), (658, true), (690, true), (707, true), (736, true), (737, true), (768, true), (784, true), (786, true), (805, true), (834, true), (835, true), (852, true), (857, true), (864, true), (868, true), (871, true), (872, true), (877, true), (883, true), (886, true), (888, true), (898, true), (903, true), (905, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [526, 541, 542, 550, 563, 573], provide: [(498, true), (507, true), (524, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(526, true), (541, true), (542, true), (550, true), (563, true), (573, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {498, 507, 524, 596, 661, 919} + [944, 946, 961, 966, 981, 1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487, 601, 618, 619, 624, 645, 647, 649, 658, 690, 707, 736, 737, 768, 784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905, 526, 541, 542, 550, 563, 573]
[INFO] [stdout] b all: {1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487, 526, 541, 542, 550, 563, 573, 601, 618, 619, 624, 645, 647, 649, 658, 690, 707, 736, 737, 768, 784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905, 944, 946, 961, 966, 981} + [596, 661, 919, 498, 507, 524]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487, 498, 507, 524, 526, 541, 542, 550, 563, 573, 596, 601, 618, 619, 624, 645, 647, 649, 658, 661, 690, 707, 736, 737, 768, 784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905, 919, 944, 946, 961, 966, 981]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487, 498, 507, 524, 526, 541, 542, 550, 563, 573, 596, 601, 618, 619, 624, 645, 647, 649, 658, 661, 690, 707, 736, 737, 768, 784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905, 919, 944, 946, 961, 966, 981], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 8, 14, 18, 25, 26, 28, 37, 49, 56, 57, 71, 80, 97, 100, 111, 115, 154, 157, 158, 191, 196, 231, 252, 294, 302, 348, 352, 362, 364, 384, 391, 425, 431, 464, 487, 498, 507, 524, 526, 541, 542, 550, 563, 573, 596, 601, 618, 619, 624, 645, 647, 649, 658, 661, 690, 707, 736, 737, 768, 784, 786, 805, 834, 835, 852, 857, 864, 868, 871, 872, 877, 883, 886, 888, 898, 903, 905, 919, 944, 946, 961, 966, 981], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 25, 60, 106, 131, 160, 228, 278, 297, 305, 415, 452, 485, 510, 566, 622, 757, 787, 805, 858}
[INFO] [stdout] b items: {12, 22, 36, 59, 64, 84, 88, 108, 109, 110, 124, 128, 145, 168, 251, 316, 324, 382, 412, 424, 500, 527, 640, 756, 764, 850, 874, 882, 912, 944, 970, 988}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 859), fp: EncodedCountingMonoid(20, SumMonoid(7859)) }], item_sets: [ItemSet { range: Range(859, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 168), fp: EncodedCountingMonoid(13, SumMonoid(1089)) }, Fingerprint { range: Range(168, 859), fp: EncodedCountingMonoid(13, SumMonoid(6314)) }], item_sets: [ItemSet { range: Range(859, 12), items: [874, 882, 912, 944, 970, 988], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 106), fp: EncodedCountingMonoid(3, SumMonoid(97)) }, Fingerprint { range: Range(106, 168), fp: EncodedCountingMonoid(3, SumMonoid(397)) }, Fingerprint { range: Range(168, 510), fp: EncodedCountingMonoid(7, SumMonoid(2460)) }, Fingerprint { range: Range(510, 859), fp: EncodedCountingMonoid(7, SumMonoid(4905)) }], item_sets: [], wants: [874, 882, 912, 944, 970, 988], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 64), fp: EncodedCountingMonoid(4, SumMonoid(129)) }, Fingerprint { range: Range(64, 106), fp: EncodedCountingMonoid(3, SumMonoid(236)) }, Fingerprint { range: Range(106, 124), fp: EncodedCountingMonoid(3, SumMonoid(327)) }, Fingerprint { range: Range(124, 168), fp: EncodedCountingMonoid(3, SumMonoid(397)) }, Fingerprint { range: Range(168, 382), fp: EncodedCountingMonoid(4, SumMonoid(1059)) }, Fingerprint { range: Range(382, 510), fp: EncodedCountingMonoid(4, SumMonoid(1718)) }, Fingerprint { range: Range(510, 764), fp: EncodedCountingMonoid(3, SumMonoid(1923)) }], item_sets: [ItemSet { range: Range(764, 859), items: [764, 850], want_response: true }], wants: [], provide: [(874, true), (882, true), (912, true), (944, true), (970, true), (988, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(764, 859), items: [787, 805, 858], want_response: false }, ItemSet { range: Range(12, 60), items: [12, 25], want_response: true }, ItemSet { range: Range(60, 64), items: [60], want_response: true }, ItemSet { range: Range(64, 106), items: [], want_response: true }, ItemSet { range: Range(106, 124), items: [106], want_response: true }, ItemSet { range: Range(124, 168), items: [131, 160], want_response: true }, ItemSet { range: Range(168, 297), items: [228, 278], want_response: true }, ItemSet { range: Range(297, 382), items: [297, 305], want_response: true }, ItemSet { range: Range(382, 485), items: [415, 452], want_response: true }, ItemSet { range: Range(485, 510), items: [485], want_response: true }, ItemSet { range: Range(510, 622), items: [510, 566], want_response: true }, ItemSet { range: Range(622, 764), items: [622, 757], want_response: true }], wants: [764, 850], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 60), items: [12, 22, 36, 59], want_response: false }, ItemSet { range: Range(60, 64), items: [], want_response: false }, ItemSet { range: Range(64, 106), items: [64, 84, 88], want_response: false }, ItemSet { range: Range(106, 124), items: [108, 109, 110], want_response: false }, ItemSet { range: Range(124, 168), items: [124, 128, 145], want_response: false }, ItemSet { range: Range(168, 297), items: [168, 251], want_response: false }, ItemSet { range: Range(297, 382), items: [316, 324], want_response: false }, ItemSet { range: Range(382, 485), items: [382, 412, 424], want_response: false }, ItemSet { range: Range(485, 510), items: [500], want_response: false }, ItemSet { range: Range(510, 622), items: [527], want_response: false }, ItemSet { range: Range(622, 764), items: [640, 756], want_response: false }], wants: [787, 805, 858, 25, 60, 106, 131, 160, 228, 278, 297, 305, 415, 452, 485, 510, 566, 622, 757], provide: [(764, true), (850, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [22, 36, 59, 64, 84, 88, 108, 109, 110, 124, 128, 145, 168, 251, 316, 324, 382, 412, 424, 500, 527, 640, 756], provide: [(787, true), (805, true), (858, true), (25, true), (60, true), (106, true), (131, true), (160, true), (228, true), (278, true), (297, true), (305, true), (415, true), (452, true), (485, true), (510, true), (566, true), (622, true), (757, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(22, true), (36, true), (59, true), (64, true), (84, true), (88, true), (108, true), (109, true), (110, true), (124, true), (128, true), (145, true), (168, true), (251, true), (316, true), (324, true), (382, true), (412, true), (424, true), (500, true), (527, true), (640, true), (756, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 25, 60, 106, 131, 160, 228, 278, 297, 305, 415, 452, 485, 510, 566, 622, 757, 787, 805, 858} + [874, 882, 912, 944, 970, 988, 764, 850, 22, 36, 59, 64, 84, 88, 108, 109, 110, 124, 128, 145, 168, 251, 316, 324, 382, 412, 424, 500, 527, 640, 756]
[INFO] [stdout] b all: {12, 22, 36, 59, 64, 84, 88, 108, 109, 110, 124, 128, 145, 168, 251, 316, 324, 382, 412, 424, 500, 527, 640, 756, 764, 850, 874, 882, 912, 944, 970, 988} + [787, 805, 858, 25, 60, 106, 131, 160, 228, 278, 297, 305, 415, 452, 485, 510, 566, 622, 757]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [12, 22, 25, 36, 59, 60, 64, 84, 88, 106, 108, 109, 110, 124, 128, 131, 145, 160, 168, 228, 251, 278, 297, 305, 316, 324, 382, 412, 415, 424, 452, 485, 500, 510, 527, 566, 622, 640, 756, 757, 764, 787, 805, 850, 858, 874, 882, 912, 944, 970, 988]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [12, 22, 25, 36, 59, 60, 64, 84, 88, 106, 108, 109, 110, 124, 128, 131, 145, 160, 168, 228, 251, 278, 297, 305, 316, 324, 382, 412, 415, 424, 452, 485, 500, 510, 527, 566, 622, 640, 756, 757, 764, 787, 805, 850, 858, 874, 882, 912, 944, 970, 988], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [12, 22, 25, 36, 59, 60, 64, 84, 88, 106, 108, 109, 110, 124, 128, 131, 145, 160, 168, 228, 251, 278, 297, 305, 316, 324, 382, 412, 415, 424, 452, 485, 500, 510, 527, 566, 622, 640, 756, 757, 764, 787, 805, 850, 858, 874, 882, 912, 944, 970, 988], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {152, 369, 395, 547, 548, 554, 631, 754, 811}
[INFO] [stdout] b items: {1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147, 152, 175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 391, 401, 408, 425, 427, 449, 452, 471, 478, 509, 513, 532, 536, 538, 539, 568, 579, 644, 660, 661, 675, 678, 696, 708, 712, 713, 739, 761, 770, 774, 787, 812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(152, 812), fp: EncodedCountingMonoid(9, SumMonoid(4761)) }], item_sets: [ItemSet { range: Range(812, 152), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(152, 471), fp: EncodedCountingMonoid(24, SumMonoid(7542)) }, Fingerprint { range: Range(471, 812), fp: EncodedCountingMonoid(24, SumMonoid(15241)) }], item_sets: [ItemSet { range: Range(812, 152), items: [812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999, 1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(471, 631), fp: EncodedCountingMonoid(3, SumMonoid(1649)) }, Fingerprint { range: Range(631, 812), fp: EncodedCountingMonoid(3, SumMonoid(2196)) }], item_sets: [ItemSet { range: Range(152, 395), items: [152, 369], want_response: true }, ItemSet { range: Range(395, 471), items: [395], want_response: true }], wants: [812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999, 1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(471, 536), fp: EncodedCountingMonoid(5, SumMonoid(2503)) }, Fingerprint { range: Range(536, 631), fp: EncodedCountingMonoid(5, SumMonoid(2760)) }, Fingerprint { range: Range(631, 712), fp: EncodedCountingMonoid(7, SumMonoid(4722)) }, Fingerprint { range: Range(712, 812), fp: EncodedCountingMonoid(7, SumMonoid(5256)) }], item_sets: [ItemSet { range: Range(152, 395), items: [152, 175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 391], want_response: false }, ItemSet { range: Range(395, 471), items: [401, 408, 425, 427, 449, 452], want_response: false }], wants: [369, 395], provide: [(812, true), (829, true), (849, true), (853, true), (856, true), (857, true), (858, true), (882, true), (898, true), (916, true), (941, true), (943, true), (951, true), (962, true), (966, true), (967, true), (968, true), (973, true), (984, true), (989, true), (999, true), (1, true), (3, true), (23, true), (25, true), (50, true), (59, true), (65, true), (67, true), (73, true), (79, true), (80, true), (95, true), (96, true), (131, true), (132, true), (139, true), (141, true), (147, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(471, 536), items: [], want_response: true }, ItemSet { range: Range(536, 554), items: [547, 548], want_response: true }, ItemSet { range: Range(554, 631), items: [554], want_response: true }, ItemSet { range: Range(631, 712), items: [631], want_response: true }, ItemSet { range: Range(712, 812), items: [754, 811], want_response: true }], wants: [175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 391, 401, 408, 425, 427, 449, 452], provide: [(369, true), (395, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(471, 536), items: [471, 478, 509, 513, 532], want_response: false }, ItemSet { range: Range(536, 554), items: [536, 538, 539], want_response: false }, ItemSet { range: Range(554, 631), items: [568, 579], want_response: false }, ItemSet { range: Range(631, 712), items: [644, 660, 661, 675, 678, 696, 708], want_response: false }, ItemSet { range: Range(712, 812), items: [712, 713, 739, 761, 770, 774, 787], want_response: false }], wants: [547, 548, 554, 631, 754, 811], provide: [(175, true), (217, true), (218, true), (225, true), (227, true), (228, true), (278, true), (280, true), (290, true), (292, true), (298, true), (299, true), (346, true), (348, true), (357, true), (359, true), (391, true), (401, true), (408, true), (425, true), (427, true), (449, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [471, 478, 509, 513, 532, 536, 538, 539, 568, 579, 644, 660, 661, 675, 678, 696, 708, 712, 713, 739, 761, 770, 774, 787], provide: [(547, true), (548, true), (554, true), (631, true), (754, true), (811, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(471, true), (478, true), (509, true), (513, true), (532, true), (536, true), (538, true), (539, true), (568, true), (579, true), (644, true), (660, true), (661, true), (675, true), (678, true), (696, true), (708, true), (712, true), (713, true), (739, true), (761, true), (770, true), (774, true), (787, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {152, 369, 395, 547, 548, 554, 631, 754, 811} + [812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999, 1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147, 175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 391, 401, 408, 425, 427, 449, 452, 471, 478, 509, 513, 532, 536, 538, 539, 568, 579, 644, 660, 661, 675, 678, 696, 708, 712, 713, 739, 761, 770, 774, 787]
[INFO] [stdout] b all: {1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147, 152, 175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 391, 401, 408, 425, 427, 449, 452, 471, 478, 509, 513, 532, 536, 538, 539, 568, 579, 644, 660, 661, 675, 678, 696, 708, 712, 713, 739, 761, 770, 774, 787, 812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999} + [369, 395, 547, 548, 554, 631, 754, 811]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147, 152, 175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 369, 391, 395, 401, 408, 425, 427, 449, 452, 471, 478, 509, 513, 532, 536, 538, 539, 547, 548, 554, 568, 579, 631, 644, 660, 661, 675, 678, 696, 708, 712, 713, 739, 754, 761, 770, 774, 787, 811, 812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147, 152, 175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 369, 391, 395, 401, 408, 425, 427, 449, 452, 471, 478, 509, 513, 532, 536, 538, 539, 547, 548, 554, 568, 579, 631, 644, 660, 661, 675, 678, 696, 708, 712, 713, 739, 754, 761, 770, 774, 787, 811, 812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 3, 23, 25, 50, 59, 65, 67, 73, 79, 80, 95, 96, 131, 132, 139, 141, 147, 152, 175, 217, 218, 225, 227, 228, 278, 280, 290, 292, 298, 299, 346, 348, 357, 359, 369, 391, 395, 401, 408, 425, 427, 449, 452, 471, 478, 509, 513, 532, 536, 538, 539, 547, 548, 554, 568, 579, 631, 644, 660, 661, 675, 678, 696, 708, 712, 713, 739, 754, 761, 770, 774, 787, 811, 812, 829, 849, 853, 856, 857, 858, 882, 898, 916, 941, 943, 951, 962, 966, 967, 968, 973, 984, 989, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 14, 15, 16, 24, 33, 42, 65, 72, 74, 75, 94, 108, 111, 115, 134, 140, 144, 154, 157, 162, 186, 201, 207, 210, 280, 281, 298, 315, 320, 321, 326, 328, 333, 355, 357, 368, 376, 379, 383, 388, 407, 408, 438, 454, 469, 478, 500, 508, 515, 520, 538, 541, 543, 555, 557, 562, 563, 575, 606, 622, 637, 647, 651, 659, 678, 699, 705, 713, 727, 754, 768, 773, 785, 789, 800, 809, 821, 836, 839, 848, 899, 906, 913, 961, 966, 983, 984}
[INFO] [stdout] b items: {22, 32, 37, 41, 43, 59, 84, 87, 102, 103, 106, 107, 110, 128, 171, 188, 221, 222, 255, 256, 264, 269, 292, 324, 325, 355, 363, 377, 390, 399, 422, 426, 433, 438, 441, 464, 484, 487, 498, 511, 530, 531, 545, 552, 554, 563, 568, 575, 598, 606, 622, 623, 629, 664, 667, 673, 676, 677, 728, 752, 779, 786, 796, 809, 836, 876, 880, 883, 884, 901, 928, 938, 952, 963, 992, 994, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 985), fp: EncodedCountingMonoid(88, SumMonoid(39879)) }], item_sets: [ItemSet { range: Range(985, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 487), fp: EncodedCountingMonoid(37, SumMonoid(8840)) }, Fingerprint { range: Range(487, 985), fp: EncodedCountingMonoid(37, SumMonoid(26040)) }], item_sets: [ItemSet { range: Range(985, 9), items: [992, 994, 996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 210), fp: EncodedCountingMonoid(24, SumMonoid(2352)) }, Fingerprint { range: Range(210, 487), fp: EncodedCountingMonoid(23, SumMonoid(8272)) }, Fingerprint { range: Range(487, 713), fp: EncodedCountingMonoid(21, SumMonoid(12381)) }, Fingerprint { range: Range(713, 985), fp: EncodedCountingMonoid(20, SumMonoid(16874)) }], item_sets: [], wants: [992, 994, 996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 102), fp: EncodedCountingMonoid(8, SumMonoid(405)) }, Fingerprint { range: Range(102, 210), fp: EncodedCountingMonoid(8, SumMonoid(1015)) }, Fingerprint { range: Range(210, 377), fp: EncodedCountingMonoid(11, SumMonoid(3146)) }, Fingerprint { range: Range(377, 487), fp: EncodedCountingMonoid(10, SumMonoid(4274)) }, Fingerprint { range: Range(487, 598), fp: EncodedCountingMonoid(11, SumMonoid(5914)) }, Fingerprint { range: Range(598, 713), fp: EncodedCountingMonoid(10, SumMonoid(6435)) }, Fingerprint { range: Range(713, 880), fp: EncodedCountingMonoid(8, SumMonoid(6362)) }, Fingerprint { range: Range(880, 985), fp: EncodedCountingMonoid(8, SumMonoid(7329)) }], item_sets: [], wants: [], provide: [(992, true), (994, true), (996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 42), fp: EncodedCountingMonoid(6, SumMonoid(111)) }, Fingerprint { range: Range(42, 102), fp: EncodedCountingMonoid(6, SumMonoid(422)) }, Fingerprint { range: Range(102, 154), fp: EncodedCountingMonoid(6, SumMonoid(752)) }, Fingerprint { range: Range(154, 210), fp: EncodedCountingMonoid(6, SumMonoid(1067)) }, Fingerprint { range: Range(210, 326), fp: EncodedCountingMonoid(7, SumMonoid(2025)) }, Fingerprint { range: Range(326, 377), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(377, 438), fp: EncodedCountingMonoid(5, SumMonoid(1965)) }, Fingerprint { range: Range(438, 487), fp: EncodedCountingMonoid(4, SumMonoid(1839)) }, Fingerprint { range: Range(487, 543), fp: EncodedCountingMonoid(6, SumMonoid(3122)) }, Fingerprint { range: Range(543, 598), fp: EncodedCountingMonoid(6, SumMonoid(3355)) }, Fingerprint { range: Range(598, 659), fp: EncodedCountingMonoid(5, SumMonoid(3163)) }, Fingerprint { range: Range(659, 713), fp: EncodedCountingMonoid(4, SumMonoid(2741)) }, Fingerprint { range: Range(713, 800), fp: EncodedCountingMonoid(7, SumMonoid(5309)) }, Fingerprint { range: Range(800, 880), fp: EncodedCountingMonoid(6, SumMonoid(4953)) }, Fingerprint { range: Range(880, 966), fp: EncodedCountingMonoid(4, SumMonoid(3679)) }, Fingerprint { range: Range(966, 985), fp: EncodedCountingMonoid(3, SumMonoid(2933)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(102, 107), fp: EncodedCountingMonoid(3, SumMonoid(311)) }, Fingerprint { range: Range(107, 154), fp: EncodedCountingMonoid(3, SumMonoid(345)) }, Fingerprint { range: Range(210, 269), fp: EncodedCountingMonoid(5, SumMonoid(1218)) }, Fingerprint { range: Range(269, 326), fp: EncodedCountingMonoid(4, SumMonoid(1210)) }, Fingerprint { range: Range(377, 422), fp: EncodedCountingMonoid(3, SumMonoid(1166)) }, Fingerprint { range: Range(422, 438), fp: EncodedCountingMonoid(3, SumMonoid(1281)) }, Fingerprint { range: Range(487, 530), fp: EncodedCountingMonoid(3, SumMonoid(1496)) }, Fingerprint { range: Range(543, 563), fp: EncodedCountingMonoid(3, SumMonoid(1651)) }, Fingerprint { range: Range(563, 598), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(598, 623), fp: EncodedCountingMonoid(3, SumMonoid(1826)) }, Fingerprint { range: Range(659, 676), fp: EncodedCountingMonoid(3, SumMonoid(2004)) }, Fingerprint { range: Range(713, 786), fp: EncodedCountingMonoid(3, SumMonoid(2259)) }, Fingerprint { range: Range(880, 928), fp: EncodedCountingMonoid(4, SumMonoid(3548)) }, Fingerprint { range: Range(928, 966), fp: EncodedCountingMonoid(4, SumMonoid(3781)) }], item_sets: [ItemSet { range: Range(9, 37), items: [22, 32], want_response: true }, ItemSet { range: Range(37, 42), items: [37, 41], want_response: true }, ItemSet { range: Range(42, 84), items: [43, 59], want_response: true }, ItemSet { range: Range(84, 102), items: [84, 87], want_response: true }, ItemSet { range: Range(154, 210), items: [171, 188], want_response: true }, ItemSet { range: Range(326, 377), items: [355, 363], want_response: true }, ItemSet { range: Range(438, 464), items: [438, 441], want_response: true }, ItemSet { range: Range(464, 487), items: [464, 484], want_response: true }, ItemSet { range: Range(530, 543), items: [530, 531], want_response: true }, ItemSet { range: Range(623, 659), items: [623, 629], want_response: true }, ItemSet { range: Range(676, 713), items: [676, 677], want_response: true }, ItemSet { range: Range(786, 800), items: [786, 796], want_response: true }, ItemSet { range: Range(800, 876), items: [809, 836], want_response: true }, ItemSet { range: Range(876, 880), items: [876], want_response: true }, ItemSet { range: Range(966, 985), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(107, 134), fp: EncodedCountingMonoid(3, SumMonoid(334)) }, Fingerprint { range: Range(134, 154), fp: EncodedCountingMonoid(3, SumMonoid(418)) }, Fingerprint { range: Range(269, 315), fp: EncodedCountingMonoid(3, SumMonoid(859)) }, Fingerprint { range: Range(315, 326), fp: EncodedCountingMonoid(3, SumMonoid(956)) }, Fingerprint { range: Range(377, 407), fp: EncodedCountingMonoid(3, SumMonoid(1150)) }, Fingerprint { range: Range(713, 768), fp: EncodedCountingMonoid(3, SumMonoid(2194)) }, Fingerprint { range: Range(768, 786), fp: EncodedCountingMonoid(3, SumMonoid(2326)) }], item_sets: [ItemSet { range: Range(9, 37), items: [9, 14, 15, 16, 24, 33], want_response: false }, ItemSet { range: Range(37, 42), items: [], want_response: false }, ItemSet { range: Range(42, 84), items: [42, 65, 72, 74, 75], want_response: false }, ItemSet { range: Range(84, 102), items: [94], want_response: false }, ItemSet { range: Range(154, 210), items: [154, 157, 162, 186, 201, 207], want_response: false }, ItemSet { range: Range(326, 377), items: [326, 328, 333, 355, 357, 368, 376], want_response: false }, ItemSet { range: Range(438, 464), items: [438, 454], want_response: false }, ItemSet { range: Range(464, 487), items: [469, 478], want_response: false }, ItemSet { range: Range(530, 543), items: [538, 541], want_response: false }, ItemSet { range: Range(623, 659), items: [637, 647, 651], want_response: false }, ItemSet { range: Range(676, 713), items: [678, 699, 705], want_response: false }, ItemSet { range: Range(786, 800), items: [789], want_response: false }, ItemSet { range: Range(800, 876), items: [800, 809, 821, 836, 839, 848], want_response: false }, ItemSet { range: Range(876, 880), items: [], want_response: false }, ItemSet { range: Range(966, 985), items: [966, 983, 984], want_response: false }, ItemSet { range: Range(102, 107), items: [], want_response: true }, ItemSet { range: Range(210, 269), items: [210], want_response: true }, ItemSet { range: Range(407, 422), items: [407, 408], want_response: true }, ItemSet { range: Range(422, 438), items: [], want_response: true }, ItemSet { range: Range(487, 515), items: [500, 508], want_response: true }, ItemSet { range: Range(515, 530), items: [515, 520], want_response: true }, ItemSet { range: Range(543, 557), items: [543, 555], want_response: true }, ItemSet { range: Range(557, 563), items: [557, 562], want_response: true }, ItemSet { range: Range(563, 598), items: [563, 575], want_response: true }, ItemSet { range: Range(598, 623), items: [606, 622], want_response: true }, ItemSet { range: Range(659, 676), items: [659], want_response: true }, ItemSet { range: Range(880, 913), items: [899, 906], want_response: true }, ItemSet { range: Range(913, 928), items: [913], want_response: true }, ItemSet { range: Range(928, 966), items: [961], want_response: true }], wants: [22, 32, 37, 41, 43, 59, 84, 87, 171, 188, 363, 441, 464, 484, 530, 531, 623, 629, 676, 677, 786, 796, 876], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(102, 107), items: [102, 103, 106], want_response: false }, ItemSet { range: Range(210, 269), items: [221, 222, 255, 256, 264], want_response: false }, ItemSet { range: Range(407, 422), items: [], want_response: false }, ItemSet { range: Range(422, 438), items: [422, 426, 433], want_response: false }, ItemSet { range: Range(487, 515), items: [487, 498, 511], want_response: false }, ItemSet { range: Range(515, 530), items: [], want_response: false }, ItemSet { range: Range(543, 557), items: [545, 552, 554], want_response: false }, ItemSet { range: Range(557, 563), items: [], want_response: false }, ItemSet { range: Range(563, 598), items: [563, 568, 575], want_response: false }, ItemSet { range: Range(598, 623), items: [598, 606, 622], want_response: false }, ItemSet { range: Range(659, 676), items: [664, 667, 673], want_response: false }, ItemSet { range: Range(880, 913), items: [880, 883, 884, 901], want_response: false }, ItemSet { range: Range(913, 928), items: [], want_response: false }, ItemSet { range: Range(928, 966), items: [928, 938, 952, 963], want_response: false }, ItemSet { range: Range(107, 128), items: [107, 110], want_response: true }, ItemSet { range: Range(128, 134), items: [128], want_response: true }, ItemSet { range: Range(134, 154), items: [], want_response: true }, ItemSet { range: Range(269, 315), items: [269, 292], want_response: true }, ItemSet { range: Range(315, 326), items: [324, 325], want_response: true }, ItemSet { range: Range(377, 399), items: [377, 390], want_response: true }, ItemSet { range: Range(399, 407), items: [399], want_response: true }, ItemSet { range: Range(713, 768), items: [728, 752], want_response: true }, ItemSet { range: Range(768, 786), items: [779], want_response: true }], wants: [9, 14, 15, 16, 24, 33, 42, 65, 72, 74, 75, 94, 154, 157, 162, 186, 201, 207, 326, 328, 333, 357, 368, 376, 454, 469, 478, 538, 541, 637, 647, 651, 678, 699, 705, 789, 800, 821, 839, 848, 966, 983, 984, 210, 407, 408, 500, 508, 515, 520, 543, 555, 557, 562, 659, 899, 906, 913, 961], provide: [(22, true), (32, true), (37, true), (41, true), (43, true), (59, true), (84, true), (87, true), (171, true), (188, true), (363, true), (441, true), (464, true), (484, true), (530, true), (531, true), (623, true), (629, true), (676, true), (677, true), (786, true), (796, true), (876, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(107, 128), items: [108, 111, 115], want_response: false }, ItemSet { range: Range(128, 134), items: [], want_response: false }, ItemSet { range: Range(134, 154), items: [134, 140, 144], want_response: false }, ItemSet { range: Range(269, 315), items: [280, 281, 298], want_response: false }, ItemSet { range: Range(315, 326), items: [315, 320, 321], want_response: false }, ItemSet { range: Range(377, 399), items: [379, 383, 388], want_response: false }, ItemSet { range: Range(399, 407), items: [], want_response: false }, ItemSet { range: Range(713, 768), items: [713, 727, 754], want_response: false }, ItemSet { range: Range(768, 786), items: [768, 773, 785], want_response: false }], wants: [102, 103, 106, 221, 222, 255, 256, 264, 422, 426, 433, 487, 498, 511, 545, 552, 554, 568, 598, 664, 667, 673, 880, 883, 884, 901, 928, 938, 952, 963, 107, 110, 128, 269, 292, 324, 325, 377, 390, 399, 728, 752, 779], provide: [(9, true), (14, true), (15, true), (16, true), (24, true), (33, true), (42, true), (65, true), (72, true), (74, true), (75, true), (94, true), (154, true), (157, true), (162, true), (186, true), (201, true), (207, true), (326, true), (328, true), (333, true), (357, true), (368, true), (376, true), (454, true), (469, true), (478, true), (538, true), (541, true), (637, true), (647, true), (651, true), (678, true), (699, true), (705, true), (789, true), (800, true), (821, true), (839, true), (848, true), (966, true), (983, true), (984, true), (210, true), (407, true), (408, true), (500, true), (508, true), (515, true), (520, true), (543, true), (555, true), (557, true), (562, true), (659, true), (899, true), (906, true), (913, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [108, 111, 115, 134, 140, 144, 280, 281, 298, 315, 320, 321, 379, 383, 388, 713, 727, 754, 768, 773, 785], provide: [(102, true), (103, true), (106, true), (221, true), (222, true), (255, true), (256, true), (264, true), (422, true), (426, true), (433, true), (487, true), (498, true), (511, true), (545, true), (552, true), (554, true), (568, true), (598, true), (664, true), (667, true), (673, true), (880, true), (883, true), (884, true), (901, true), (928, true), (938, true), (952, true), (963, true), (107, true), (110, true), (128, true), (269, true), (292, true), (324, true), (325, true), (377, true), (390, true), (399, true), (728, true), (752, true), (779, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(108, true), (111, true), (115, true), (134, true), (140, true), (144, true), (280, true), (281, true), (298, true), (315, true), (320, true), (321, true), (379, true), (383, true), (388, true), (713, true), (727, true), (754, true), (768, true), (773, true), (785, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 14, 15, 16, 24, 33, 42, 65, 72, 74, 75, 94, 108, 111, 115, 134, 140, 144, 154, 157, 162, 186, 201, 207, 210, 280, 281, 298, 315, 320, 321, 326, 328, 333, 355, 357, 368, 376, 379, 383, 388, 407, 408, 438, 454, 469, 478, 500, 508, 515, 520, 538, 541, 543, 555, 557, 562, 563, 575, 606, 622, 637, 647, 651, 659, 678, 699, 705, 713, 727, 754, 768, 773, 785, 789, 800, 809, 821, 836, 839, 848, 899, 906, 913, 961, 966, 983, 984} + [992, 994, 996, 22, 32, 37, 41, 43, 59, 84, 87, 171, 188, 363, 441, 464, 484, 530, 531, 623, 629, 676, 677, 786, 796, 876, 102, 103, 106, 221, 222, 255, 256, 264, 422, 426, 433, 487, 498, 511, 545, 552, 554, 568, 598, 664, 667, 673, 880, 883, 884, 901, 928, 938, 952, 963, 107, 110, 128, 269, 292, 324, 325, 377, 390, 399, 728, 752, 779]
[INFO] [stdout] b all: {22, 32, 37, 41, 43, 59, 84, 87, 102, 103, 106, 107, 110, 128, 171, 188, 221, 222, 255, 256, 264, 269, 292, 324, 325, 355, 363, 377, 390, 399, 422, 426, 433, 438, 441, 464, 484, 487, 498, 511, 530, 531, 545, 552, 554, 563, 568, 575, 598, 606, 622, 623, 629, 664, 667, 673, 676, 677, 728, 752, 779, 786, 796, 809, 836, 876, 880, 883, 884, 901, 928, 938, 952, 963, 992, 994, 996} + [9, 14, 15, 16, 24, 33, 42, 65, 72, 74, 75, 94, 154, 157, 162, 186, 201, 207, 326, 328, 333, 357, 368, 376, 454, 469, 478, 538, 541, 637, 647, 651, 678, 699, 705, 789, 800, 821, 839, 848, 966, 983, 984, 210, 407, 408, 500, 508, 515, 520, 543, 555, 557, 562, 659, 899, 906, 913, 961, 108, 111, 115, 134, 140, 144, 280, 281, 298, 315, 320, 321, 379, 383, 388, 713, 727, 754, 768, 773, 785]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 14, 15, 16, 22, 24, 32, 33, 37, 41, 42, 43, 59, 65, 72, 74, 75, 84, 87, 94, 102, 103, 106, 107, 108, 110, 111, 115, 128, 134, 140, 144, 154, 157, 162, 171, 186, 188, 201, 207, 210, 221, 222, 255, 256, 264, 269, 280, 281, 292, 298, 315, 320, 321, 324, 325, 326, 328, 333, 355, 357, 363, 368, 376, 377, 379, 383, 388, 390, 399, 407, 408, 422, 426, 433, 438, 441, 454, 464, 469, 478, 484, 487, 498, 500, 508, 511, 515, 520, 530, 531, 538, 541, 543, 545, 552, 554, 555, 557, 562, 563, 568, 575, 598, 606, 622, 623, 629, 637, 647, 651, 659, 664, 667, 673, 676, 677, 678, 699, 705, 713, 727, 728, 752, 754, 768, 773, 779, 785, 786, 789, 796, 800, 809, 821, 836, 839, 848, 876, 880, 883, 884, 899, 901, 906, 913, 928, 938, 952, 961, 963, 966, 983, 984, 992, 994, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 14, 15, 16, 22, 24, 32, 33, 37, 41, 42, 43, 59, 65, 72, 74, 75, 84, 87, 94, 102, 103, 106, 107, 108, 110, 111, 115, 128, 134, 140, 144, 154, 157, 162, 171, 186, 188, 201, 207, 210, 221, 222, 255, 256, 264, 269, 280, 281, 292, 298, 315, 320, 321, 324, 325, 326, 328, 333, 355, 357, 363, 368, 376, 377, 379, 383, 388, 390, 399, 407, 408, 422, 426, 433, 438, 441, 454, 464, 469, 478, 484, 487, 498, 500, 508, 511, 515, 520, 530, 531, 538, 541, 543, 545, 552, 554, 555, 557, 562, 563, 568, 575, 598, 606, 622, 623, 629, 637, 647, 651, 659, 664, 667, 673, 676, 677, 678, 699, 705, 713, 727, 728, 752, 754, 768, 773, 779, 785, 786, 789, 796, 800, 809, 821, 836, 839, 848, 876, 880, 883, 884, 899, 901, 906, 913, 928, 938, 952, 961, 963, 966, 983, 984, 992, 994, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 14, 15, 16, 22, 24, 32, 33, 37, 41, 42, 43, 59, 65, 72, 74, 75, 84, 87, 94, 102, 103, 106, 107, 108, 110, 111, 115, 128, 134, 140, 144, 154, 157, 162, 171, 186, 188, 201, 207, 210, 221, 222, 255, 256, 264, 269, 280, 281, 292, 298, 315, 320, 321, 324, 325, 326, 328, 333, 355, 357, 363, 368, 376, 377, 379, 383, 388, 390, 399, 407, 408, 422, 426, 433, 438, 441, 454, 464, 469, 478, 484, 487, 498, 500, 508, 511, 515, 520, 530, 531, 538, 541, 543, 545, 552, 554, 555, 557, 562, 563, 568, 575, 598, 606, 622, 623, 629, 637, 647, 651, 659, 664, 667, 673, 676, 677, 678, 699, 705, 713, 727, 728, 752, 754, 768, 773, 779, 785, 786, 789, 796, 800, 809, 821, 836, 839, 848, 876, 880, 883, 884, 899, 901, 906, 913, 928, 938, 952, 961, 963, 966, 983, 984, 992, 994, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {13, 45, 67, 77, 88, 94, 99, 133, 168, 187, 188, 223, 225, 295, 315, 349, 356, 374, 401, 408, 421, 432, 447, 454, 490, 497, 517, 518, 521, 539, 548, 561, 566, 567, 574, 584, 595, 626, 643, 673, 702, 739, 742, 743, 745, 747, 777, 783, 784, 811, 851, 857, 880, 884, 905, 916, 923, 936, 985, 987}
[INFO] [stdout] b items: {1, 93, 101, 106, 108, 114, 117, 120, 138, 173, 193, 220, 247, 263, 268, 300, 337, 426, 447, 464, 540, 556, 581, 593, 615, 653, 688, 690, 700, 736, 792, 811, 818, 843, 897, 899, 902, 944, 957, 992}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 988), fp: EncodedCountingMonoid(60, SumMonoid(31575)) }], item_sets: [ItemSet { range: Range(988, 13), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 540), fp: EncodedCountingMonoid(19, SumMonoid(4235)) }, Fingerprint { range: Range(540, 988), fp: EncodedCountingMonoid(19, SumMonoid(14215)) }], item_sets: [ItemSet { range: Range(988, 13), items: [992, 1], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 349), fp: EncodedCountingMonoid(15, SumMonoid(2217)) }, Fingerprint { range: Range(349, 540), fp: EncodedCountingMonoid(15, SumMonoid(6724)) }, Fingerprint { range: Range(540, 747), fp: EncodedCountingMonoid(15, SumMonoid(9608)) }, Fingerprint { range: Range(747, 988), fp: EncodedCountingMonoid(15, SumMonoid(13026)) }], item_sets: [], wants: [992, 1], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 173), fp: EncodedCountingMonoid(8, SumMonoid(897)) }, Fingerprint { range: Range(173, 349), fp: EncodedCountingMonoid(8, SumMonoid(2001)) }, Fingerprint { range: Range(540, 653), fp: EncodedCountingMonoid(5, SumMonoid(2885)) }, Fingerprint { range: Range(653, 747), fp: EncodedCountingMonoid(5, SumMonoid(3467)) }, Fingerprint { range: Range(747, 899), fp: EncodedCountingMonoid(5, SumMonoid(4161)) }, Fingerprint { range: Range(899, 988), fp: EncodedCountingMonoid(4, SumMonoid(3702)) }], item_sets: [ItemSet { range: Range(349, 464), items: [426, 447], want_response: true }, ItemSet { range: Range(464, 540), items: [464], want_response: true }], wants: [], provide: [(992, true), (1, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 94), fp: EncodedCountingMonoid(5, SumMonoid(290)) }, Fingerprint { range: Range(94, 173), fp: EncodedCountingMonoid(4, SumMonoid(494)) }, Fingerprint { range: Range(173, 225), fp: EncodedCountingMonoid(3, SumMonoid(598)) }, Fingerprint { range: Range(225, 349), fp: EncodedCountingMonoid(3, SumMonoid(835)) }, Fingerprint { range: Range(540, 584), fp: EncodedCountingMonoid(5, SumMonoid(2816)) }, Fingerprint { range: Range(584, 653), fp: EncodedCountingMonoid(4, SumMonoid(2448)) }, Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(3, SumMonoid(2114)) }, Fingerprint { range: Range(742, 747), fp: EncodedCountingMonoid(3, SumMonoid(2230)) }, Fingerprint { range: Range(747, 851), fp: EncodedCountingMonoid(5, SumMonoid(3902)) }, Fingerprint { range: Range(851, 899), fp: EncodedCountingMonoid(4, SumMonoid(3472)) }, Fingerprint { range: Range(899, 936), fp: EncodedCountingMonoid(3, SumMonoid(2744)) }, Fingerprint { range: Range(936, 988), fp: EncodedCountingMonoid(3, SumMonoid(2908)) }], item_sets: [ItemSet { range: Range(349, 464), items: [349, 356, 374, 401, 408, 421, 432, 447, 454], want_response: false }, ItemSet { range: Range(464, 540), items: [490, 497, 517, 518, 521, 539], want_response: false }], wants: [426, 464], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 117), fp: EncodedCountingMonoid(4, SumMonoid(429)) }, Fingerprint { range: Range(117, 173), fp: EncodedCountingMonoid(3, SumMonoid(375)) }, Fingerprint { range: Range(225, 300), fp: EncodedCountingMonoid(3, SumMonoid(778)) }, Fingerprint { range: Range(653, 700), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }], item_sets: [ItemSet { range: Range(13, 94), items: [93], want_response: true }, ItemSet { range: Range(173, 220), items: [173, 193], want_response: true }, ItemSet { range: Range(220, 225), items: [220], want_response: true }, ItemSet { range: Range(300, 349), items: [300, 337], want_response: true }, ItemSet { range: Range(540, 581), items: [540, 556], want_response: true }, ItemSet { range: Range(581, 584), items: [581], want_response: true }, ItemSet { range: Range(584, 653), items: [593, 615], want_response: true }, ItemSet { range: Range(700, 742), items: [700, 736], want_response: true }, ItemSet { range: Range(742, 747), items: [], want_response: true }, ItemSet { range: Range(747, 818), items: [792, 811], want_response: true }, ItemSet { range: Range(818, 851), items: [818, 843], want_response: true }, ItemSet { range: Range(851, 899), items: [897], want_response: true }, ItemSet { range: Range(899, 936), items: [899, 902], want_response: true }, ItemSet { range: Range(936, 988), items: [944, 957], want_response: true }], wants: [349, 356, 374, 401, 408, 421, 432, 454, 490, 497, 517, 518, 521, 539], provide: [(426, true), (464, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(13, 94), items: [13, 45, 67, 77, 88], want_response: false }, ItemSet { range: Range(173, 220), items: [187, 188], want_response: false }, ItemSet { range: Range(220, 225), items: [223], want_response: false }, ItemSet { range: Range(300, 349), items: [315], want_response: false }, ItemSet { range: Range(540, 581), items: [548, 561, 566, 567, 574], want_response: false }, ItemSet { range: Range(581, 584), items: [], want_response: false }, ItemSet { range: Range(584, 653), items: [584, 595, 626, 643], want_response: false }, ItemSet { range: Range(700, 742), items: [702, 739], want_response: false }, ItemSet { range: Range(742, 747), items: [742, 743, 745], want_response: false }, ItemSet { range: Range(747, 818), items: [747, 777, 783, 784, 811], want_response: false }, ItemSet { range: Range(818, 851), items: [], want_response: false }, ItemSet { range: Range(851, 899), items: [851, 857, 880, 884], want_response: false }, ItemSet { range: Range(899, 936), items: [905, 916, 923], want_response: false }, ItemSet { range: Range(936, 988), items: [936, 985, 987], want_response: false }, ItemSet { range: Range(94, 117), items: [94, 99], want_response: true }, ItemSet { range: Range(117, 173), items: [133, 168], want_response: true }, ItemSet { range: Range(225, 300), items: [225, 295], want_response: true }, ItemSet { range: Range(653, 700), items: [673], want_response: true }], wants: [93, 173, 193, 220, 300, 337, 540, 556, 581, 593, 615, 700, 736, 792, 818, 843, 897, 899, 902, 944, 957], provide: [(349, true), (356, true), (374, true), (401, true), (408, true), (421, true), (432, true), (454, true), (490, true), (497, true), (517, true), (518, true), (521, true), (539, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 117), items: [101, 106, 108, 114], want_response: false }, ItemSet { range: Range(117, 173), items: [117, 120, 138], want_response: false }, ItemSet { range: Range(225, 300), items: [247, 263, 268], want_response: false }, ItemSet { range: Range(653, 700), items: [653, 688, 690], want_response: false }], wants: [13, 45, 67, 77, 88, 187, 188, 223, 315, 548, 561, 566, 567, 574, 584, 595, 626, 643, 702, 739, 742, 743, 745, 747, 777, 783, 784, 851, 857, 880, 884, 905, 916, 923, 936, 985, 987, 94, 99, 133, 168, 225, 295, 673], provide: [(93, true), (173, true), (193, true), (220, true), (300, true), (337, true), (540, true), (556, true), (581, true), (593, true), (615, true), (700, true), (736, true), (792, true), (818, true), (843, true), (897, true), (899, true), (902, true), (944, true), (957, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [101, 106, 108, 114, 117, 120, 138, 247, 263, 268, 653, 688, 690], provide: [(13, true), (45, true), (67, true), (77, true), (88, true), (187, true), (188, true), (223, true), (315, true), (548, true), (561, true), (566, true), (567, true), (574, true), (584, true), (595, true), (626, true), (643, true), (702, true), (739, true), (742, true), (743, true), (745, true), (747, true), (777, true), (783, true), (784, true), (851, true), (857, true), (880, true), (884, true), (905, true), (916, true), (923, true), (936, true), (985, true), (987, true), (94, true), (99, true), (133, true), (168, true), (225, true), (295, true), (673, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(101, true), (106, true), (108, true), (114, true), (117, true), (120, true), (138, true), (247, true), (263, true), (268, true), (653, true), (688, true), (690, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {13, 45, 67, 77, 88, 94, 99, 133, 168, 187, 188, 223, 225, 295, 315, 349, 356, 374, 401, 408, 421, 432, 447, 454, 490, 497, 517, 518, 521, 539, 548, 561, 566, 567, 574, 584, 595, 626, 643, 673, 702, 739, 742, 743, 745, 747, 777, 783, 784, 811, 851, 857, 880, 884, 905, 916, 923, 936, 985, 987} + [992, 1, 426, 464, 93, 173, 193, 220, 300, 337, 540, 556, 581, 593, 615, 700, 736, 792, 818, 843, 897, 899, 902, 944, 957, 101, 106, 108, 114, 117, 120, 138, 247, 263, 268, 653, 688, 690]
[INFO] [stdout] b all: {1, 93, 101, 106, 108, 114, 117, 120, 138, 173, 193, 220, 247, 263, 268, 300, 337, 426, 447, 464, 540, 556, 581, 593, 615, 653, 688, 690, 700, 736, 792, 811, 818, 843, 897, 899, 902, 944, 957, 992} + [349, 356, 374, 401, 408, 421, 432, 454, 490, 497, 517, 518, 521, 539, 13, 45, 67, 77, 88, 187, 188, 223, 315, 548, 561, 566, 567, 574, 584, 595, 626, 643, 702, 739, 742, 743, 745, 747, 777, 783, 784, 851, 857, 880, 884, 905, 916, 923, 936, 985, 987, 94, 99, 133, 168, 225, 295, 673]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 13, 45, 67, 77, 88, 93, 94, 99, 101, 106, 108, 114, 117, 120, 133, 138, 168, 173, 187, 188, 193, 220, 223, 225, 247, 263, 268, 295, 300, 315, 337, 349, 356, 374, 401, 408, 421, 426, 432, 447, 454, 464, 490, 497, 517, 518, 521, 539, 540, 548, 556, 561, 566, 567, 574, 581, 584, 593, 595, 615, 626, 643, 653, 673, 688, 690, 700, 702, 736, 739, 742, 743, 745, 747, 777, 783, 784, 792, 811, 818, 843, 851, 857, 880, 884, 897, 899, 902, 905, 916, 923, 936, 944, 957, 985, 987, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 13, 45, 67, 77, 88, 93, 94, 99, 101, 106, 108, 114, 117, 120, 133, 138, 168, 173, 187, 188, 193, 220, 223, 225, 247, 263, 268, 295, 300, 315, 337, 349, 356, 374, 401, 408, 421, 426, 432, 447, 454, 464, 490, 497, 517, 518, 521, 539, 540, 548, 556, 561, 566, 567, 574, 581, 584, 593, 595, 615, 626, 643, 653, 673, 688, 690, 700, 702, 736, 739, 742, 743, 745, 747, 777, 783, 784, 792, 811, 818, 843, 851, 857, 880, 884, 897, 899, 902, 905, 916, 923, 936, 944, 957, 985, 987, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 13, 45, 67, 77, 88, 93, 94, 99, 101, 106, 108, 114, 117, 120, 133, 138, 168, 173, 187, 188, 193, 220, 223, 225, 247, 263, 268, 295, 300, 315, 337, 349, 356, 374, 401, 408, 421, 426, 432, 447, 454, 464, 490, 497, 517, 518, 521, 539, 540, 548, 556, 561, 566, 567, 574, 581, 584, 593, 595, 615, 626, 643, 653, 673, 688, 690, 700, 702, 736, 739, 742, 743, 745, 747, 777, 783, 784, 792, 811, 818, 843, 851, 857, 880, 884, 897, 899, 902, 905, 916, 923, 936, 944, 957, 985, 987, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 13, 54, 78, 92, 94, 102, 108, 113, 126, 134, 185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275, 277, 281, 284, 306, 324, 328, 349, 361, 370, 373, 389, 391, 396, 400, 414, 415, 416, 426, 434, 438, 446, 450, 460, 473, 479, 483, 488, 532, 537, 551, 566, 647, 670, 690, 704, 709, 753, 763, 766, 774, 782, 798, 856, 859, 863, 895, 908, 918, 929, 940, 949, 952, 971, 976, 983}
[INFO] [stdout] b items: {115, 128, 141, 169, 277, 280, 306, 342, 379, 405, 432, 509, 548, 586, 612, 647, 689, 695, 732, 766, 899, 925, 930}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 984), fp: EncodedCountingMonoid(77, SumMonoid(36325)) }], item_sets: [ItemSet { range: Range(984, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 548), fp: EncodedCountingMonoid(12, SumMonoid(3483)) }, Fingerprint { range: Range(548, 984), fp: EncodedCountingMonoid(11, SumMonoid(8029)) }], item_sets: [ItemSet { range: Range(984, 9), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 324), fp: EncodedCountingMonoid(26, SumMonoid(4581)) }, Fingerprint { range: Range(324, 548), fp: EncodedCountingMonoid(25, SumMonoid(10572)) }, Fingerprint { range: Range(548, 856), fp: EncodedCountingMonoid(13, SumMonoid(9173)) }, Fingerprint { range: Range(856, 984), fp: EncodedCountingMonoid(13, SumMonoid(11999)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 277), fp: EncodedCountingMonoid(4, SumMonoid(553)) }, Fingerprint { range: Range(277, 324), fp: EncodedCountingMonoid(3, SumMonoid(863)) }, Fingerprint { range: Range(324, 432), fp: EncodedCountingMonoid(3, SumMonoid(1126)) }, Fingerprint { range: Range(548, 689), fp: EncodedCountingMonoid(4, SumMonoid(2393)) }, Fingerprint { range: Range(689, 856), fp: EncodedCountingMonoid(4, SumMonoid(2882)) }], item_sets: [ItemSet { range: Range(432, 548), items: [432, 509], want_response: true }, ItemSet { range: Range(856, 930), items: [899, 925], want_response: true }, ItemSet { range: Range(930, 984), items: [930], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(11, SumMonoid(923)) }, Fingerprint { range: Range(185, 277), fp: EncodedCountingMonoid(11, SumMonoid(2510)) }, Fingerprint { range: Range(324, 391), fp: EncodedCountingMonoid(7, SumMonoid(2494)) }, Fingerprint { range: Range(391, 432), fp: EncodedCountingMonoid(7, SumMonoid(2858)) }, Fingerprint { range: Range(689, 766), fp: EncodedCountingMonoid(5, SumMonoid(3619)) }, Fingerprint { range: Range(766, 856), fp: EncodedCountingMonoid(4, SumMonoid(3120)) }], item_sets: [ItemSet { range: Range(432, 548), items: [434, 438, 446, 450, 460, 473, 479, 483, 488, 532, 537], want_response: false }, ItemSet { range: Range(856, 930), items: [856, 859, 863, 895, 908, 918, 929], want_response: false }, ItemSet { range: Range(930, 984), items: [940, 949, 952, 971, 976, 983], want_response: false }, ItemSet { range: Range(277, 284), items: [277, 281], want_response: true }, ItemSet { range: Range(284, 324), items: [284, 306], want_response: true }, ItemSet { range: Range(548, 647), items: [551, 566], want_response: true }, ItemSet { range: Range(647, 689), items: [647, 670], want_response: true }], wants: [432, 509, 899, 925, 930], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 284), items: [277, 280], want_response: false }, ItemSet { range: Range(284, 324), items: [306], want_response: false }, ItemSet { range: Range(548, 647), items: [548, 586, 612], want_response: false }, ItemSet { range: Range(647, 689), items: [647], want_response: false }, ItemSet { range: Range(9, 141), items: [115, 128], want_response: true }, ItemSet { range: Range(141, 185), items: [141, 169], want_response: true }, ItemSet { range: Range(185, 277), items: [], want_response: true }, ItemSet { range: Range(324, 391), items: [342, 379], want_response: true }, ItemSet { range: Range(391, 432), items: [405], want_response: true }, ItemSet { range: Range(689, 732), items: [689, 695], want_response: true }, ItemSet { range: Range(732, 766), items: [732], want_response: true }, ItemSet { range: Range(766, 856), items: [766], want_response: true }], wants: [434, 438, 446, 450, 460, 473, 479, 483, 488, 532, 537, 856, 859, 863, 895, 908, 918, 929, 940, 949, 952, 971, 976, 983, 281, 284, 551, 566, 670], provide: [(432, true), (509, true), (899, true), (925, true), (930, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 141), items: [9, 13, 54, 78, 92, 94, 102, 108, 113, 126, 134], want_response: false }, ItemSet { range: Range(141, 185), items: [], want_response: false }, ItemSet { range: Range(185, 277), items: [185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275], want_response: false }, ItemSet { range: Range(324, 391), items: [324, 328, 349, 361, 370, 373, 389], want_response: false }, ItemSet { range: Range(391, 432), items: [391, 396, 400, 414, 415, 416, 426], want_response: false }, ItemSet { range: Range(689, 732), items: [690, 704, 709], want_response: false }, ItemSet { range: Range(732, 766), items: [753, 763], want_response: false }, ItemSet { range: Range(766, 856), items: [766, 774, 782, 798], want_response: false }], wants: [280, 548, 586, 612, 115, 128, 141, 169, 342, 379, 405, 689, 695, 732], provide: [(434, true), (438, true), (446, true), (450, true), (460, true), (473, true), (479, true), (483, true), (488, true), (532, true), (537, true), (856, true), (859, true), (863, true), (895, true), (908, true), (918, true), (929, true), (940, true), (949, true), (952, true), (971, true), (976, true), (983, true), (281, true), (284, true), (551, true), (566, true), (670, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [9, 13, 54, 78, 92, 94, 102, 108, 113, 126, 134, 185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275, 324, 328, 349, 361, 370, 373, 389, 391, 396, 400, 414, 415, 416, 426, 690, 704, 709, 753, 763, 774, 782, 798], provide: [(280, true), (548, true), (586, true), (612, true), (115, true), (128, true), (141, true), (169, true), (342, true), (379, true), (405, true), (689, true), (695, true), (732, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(9, true), (13, true), (54, true), (78, true), (92, true), (94, true), (102, true), (108, true), (113, true), (126, true), (134, true), (185, true), (187, true), (198, true), (208, true), (212, true), (226, true), (236, true), (253, true), (258, true), (272, true), (275, true), (324, true), (328, true), (349, true), (361, true), (370, true), (373, true), (389, true), (391, true), (396, true), (400, true), (414, true), (415, true), (416, true), (426, true), (690, true), (704, true), (709, true), (753, true), (763, true), (774, true), (782, true), (798, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 13, 54, 78, 92, 94, 102, 108, 113, 126, 134, 185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275, 277, 281, 284, 306, 324, 328, 349, 361, 370, 373, 389, 391, 396, 400, 414, 415, 416, 426, 434, 438, 446, 450, 460, 473, 479, 483, 488, 532, 537, 551, 566, 647, 670, 690, 704, 709, 753, 763, 766, 774, 782, 798, 856, 859, 863, 895, 908, 918, 929, 940, 949, 952, 971, 976, 983} + [432, 509, 899, 925, 930, 280, 548, 586, 612, 115, 128, 141, 169, 342, 379, 405, 689, 695, 732]
[INFO] [stdout] b all: {115, 128, 141, 169, 277, 280, 306, 342, 379, 405, 432, 509, 548, 586, 612, 647, 689, 695, 732, 766, 899, 925, 930} + [434, 438, 446, 450, 460, 473, 479, 483, 488, 532, 537, 856, 859, 863, 895, 908, 918, 929, 940, 949, 952, 971, 976, 983, 281, 284, 551, 566, 670, 9, 13, 54, 78, 92, 94, 102, 108, 113, 126, 134, 185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275, 324, 328, 349, 361, 370, 373, 389, 391, 396, 400, 414, 415, 416, 426, 690, 704, 709, 753, 763, 774, 782, 798]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 13, 54, 78, 92, 94, 102, 108, 113, 115, 126, 128, 134, 141, 169, 185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275, 277, 280, 281, 284, 306, 324, 328, 342, 349, 361, 370, 373, 379, 389, 391, 396, 400, 405, 414, 415, 416, 426, 432, 434, 438, 446, 450, 460, 473, 479, 483, 488, 509, 532, 537, 548, 551, 566, 586, 612, 647, 670, 689, 690, 695, 704, 709, 732, 753, 763, 766, 774, 782, 798, 856, 859, 863, 895, 899, 908, 918, 925, 929, 930, 940, 949, 952, 971, 976, 983]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 13, 54, 78, 92, 94, 102, 108, 113, 115, 126, 128, 134, 141, 169, 185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275, 277, 280, 281, 284, 306, 324, 328, 342, 349, 361, 370, 373, 379, 389, 391, 396, 400, 405, 414, 415, 416, 426, 432, 434, 438, 446, 450, 460, 473, 479, 483, 488, 509, 532, 537, 548, 551, 566, 586, 612, 647, 670, 689, 690, 695, 704, 709, 732, 753, 763, 766, 774, 782, 798, 856, 859, 863, 895, 899, 908, 918, 925, 929, 930, 940, 949, 952, 971, 976, 983], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 13, 54, 78, 92, 94, 102, 108, 113, 115, 126, 128, 134, 141, 169, 185, 187, 198, 208, 212, 226, 236, 253, 258, 272, 275, 277, 280, 281, 284, 306, 324, 328, 342, 349, 361, 370, 373, 379, 389, 391, 396, 400, 405, 414, 415, 416, 426, 432, 434, 438, 446, 450, 460, 473, 479, 483, 488, 509, 532, 537, 548, 551, 566, 586, 612, 647, 670, 689, 690, 695, 704, 709, 732, 753, 763, 766, 774, 782, 798, 856, 859, 863, 895, 899, 908, 918, 925, 929, 930, 940, 949, 952, 971, 976, 983], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 192, 199, 236, 238, 271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 535, 557, 579, 597, 603, 616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761, 785, 797, 813, 816, 846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994}
[INFO] [stdout] b items: {179, 231, 242, 531, 607, 790, 832, 842}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 995), fp: EncodedCountingMonoid(67, SumMonoid(34331)) }], item_sets: [ItemSet { range: Range(995, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 607), fp: EncodedCountingMonoid(4, SumMonoid(1183)) }, Fingerprint { range: Range(607, 995), fp: EncodedCountingMonoid(4, SumMonoid(3071)) }], item_sets: [ItemSet { range: Range(995, 4), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 271), fp: EncodedCountingMonoid(18, SumMonoid(1857)) }, Fingerprint { range: Range(271, 607), fp: EncodedCountingMonoid(18, SumMonoid(8056)) }, Fingerprint { range: Range(607, 785), fp: EncodedCountingMonoid(16, SumMonoid(11153)) }, Fingerprint { range: Range(785, 995), fp: EncodedCountingMonoid(15, SumMonoid(13265)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 242), items: [179, 231], want_response: true }, ItemSet { range: Range(242, 271), items: [242], want_response: true }, ItemSet { range: Range(271, 607), items: [531], want_response: true }, ItemSet { range: Range(607, 785), items: [607], want_response: true }, ItemSet { range: Range(785, 842), items: [790, 832], want_response: true }, ItemSet { range: Range(842, 995), items: [842], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 242), items: [4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 192, 199, 236, 238], want_response: false }, ItemSet { range: Range(242, 271), items: [], want_response: false }, ItemSet { range: Range(271, 607), items: [271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 535, 557, 579, 597, 603], want_response: false }, ItemSet { range: Range(607, 785), items: [616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761], want_response: false }, ItemSet { range: Range(785, 842), items: [785, 797, 813, 816], want_response: false }, ItemSet { range: Range(842, 995), items: [846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994], want_response: false }], wants: [179, 231, 242, 531, 607, 790, 832, 842], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 192, 199, 236, 238, 271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 535, 557, 579, 597, 603, 616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761, 785, 797, 813, 816, 846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994], provide: [(179, true), (231, true), (242, true), (531, true), (607, true), (790, true), (832, true), (842, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(4, true), (13, true), (33, true), (36, true), (39, true), (53, true), (58, true), (59, true), (72, true), (96, true), (118, true), (128, true), (136, true), (147, true), (192, true), (199, true), (236, true), (238, true), (271, true), (277, true), (295, true), (316, true), (324, true), (394, true), (405, true), (408, true), (469, true), (475, true), (502, true), (522, true), (527, true), (535, true), (557, true), (579, true), (597, true), (603, true), (616, true), (625, true), (643, true), (649, true), (664, true), (686, true), (689, true), (697, true), (701, true), (704, true), (721, true), (741, true), (748, true), (752, true), (756, true), (761, true), (785, true), (797, true), (813, true), (816, true), (846, true), (847, true), (857, true), (887, true), (891, true), (902, true), (931, true), (961, true), (965, true), (973, true), (994, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 192, 199, 236, 238, 271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 535, 557, 579, 597, 603, 616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761, 785, 797, 813, 816, 846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994} + [179, 231, 242, 531, 607, 790, 832, 842]
[INFO] [stdout] b all: {179, 231, 242, 531, 607, 790, 832, 842} + [4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 192, 199, 236, 238, 271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 535, 557, 579, 597, 603, 616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761, 785, 797, 813, 816, 846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 179, 192, 199, 231, 236, 238, 242, 271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 531, 535, 557, 579, 597, 603, 607, 616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761, 785, 790, 797, 813, 816, 832, 842, 846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 179, 192, 199, 231, 236, 238, 242, 271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 531, 535, 557, 579, 597, 603, 607, 616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761, 785, 790, 797, 813, 816, 832, 842, 846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 13, 33, 36, 39, 53, 58, 59, 72, 96, 118, 128, 136, 147, 179, 192, 199, 231, 236, 238, 242, 271, 277, 295, 316, 324, 394, 405, 408, 469, 475, 502, 522, 527, 531, 535, 557, 579, 597, 603, 607, 616, 625, 643, 649, 664, 686, 689, 697, 701, 704, 721, 741, 748, 752, 756, 761, 785, 790, 797, 813, 816, 832, 842, 846, 847, 857, 887, 891, 902, 931, 961, 965, 973, 994], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 29, 47, 140, 142, 155, 160, 165, 170, 178, 210, 253, 303, 304, 326, 351, 362, 381, 389, 395, 398, 410, 440, 475, 490, 500, 504, 525, 561, 623, 686, 689, 696, 704, 715, 717, 753, 760, 761, 781, 782, 784, 839, 856, 868, 870, 873, 918, 924, 940, 944, 967}
[INFO] [stdout] b items: {4, 35, 47, 142, 175, 181, 217, 226, 248, 259, 280, 296, 301, 319, 354, 364, 395, 409, 418, 426, 460, 507, 510, 513, 537, 549, 551, 638, 667, 728, 734, 758, 760, 827, 853, 865, 867, 878, 882, 883, 885, 900}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 968), fp: EncodedCountingMonoid(52, SumMonoid(27230)) }], item_sets: [ItemSet { range: Range(968, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 510), fp: EncodedCountingMonoid(21, SumMonoid(6059)) }, Fingerprint { range: Range(510, 968), fp: EncodedCountingMonoid(20, SumMonoid(14785)) }], item_sets: [ItemSet { range: Range(968, 17), items: [4], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 326), fp: EncodedCountingMonoid(14, SumMonoid(2273)) }, Fingerprint { range: Range(326, 510), fp: EncodedCountingMonoid(13, SumMonoid(5421)) }, Fingerprint { range: Range(510, 782), fp: EncodedCountingMonoid(13, SumMonoid(8971)) }, Fingerprint { range: Range(782, 968), fp: EncodedCountingMonoid(12, SumMonoid(10565)) }], item_sets: [], wants: [4], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 248), fp: EncodedCountingMonoid(7, SumMonoid(1023)) }, Fingerprint { range: Range(248, 326), fp: EncodedCountingMonoid(6, SumMonoid(1703)) }, Fingerprint { range: Range(326, 418), fp: EncodedCountingMonoid(4, SumMonoid(1522)) }, Fingerprint { range: Range(418, 510), fp: EncodedCountingMonoid(4, SumMonoid(1811)) }, Fingerprint { range: Range(510, 667), fp: EncodedCountingMonoid(6, SumMonoid(3298)) }, Fingerprint { range: Range(667, 782), fp: EncodedCountingMonoid(5, SumMonoid(3647)) }, Fingerprint { range: Range(782, 882), fp: EncodedCountingMonoid(5, SumMonoid(4290)) }, Fingerprint { range: Range(882, 968), fp: EncodedCountingMonoid(4, SumMonoid(3550)) }], item_sets: [], wants: [], provide: [(4, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 160), fp: EncodedCountingMonoid(6, SumMonoid(530)) }, Fingerprint { range: Range(160, 248), fp: EncodedCountingMonoid(5, SumMonoid(883)) }, Fingerprint { range: Range(326, 389), fp: EncodedCountingMonoid(4, SumMonoid(1420)) }, Fingerprint { range: Range(389, 418), fp: EncodedCountingMonoid(4, SumMonoid(1592)) }, Fingerprint { range: Range(418, 500), fp: EncodedCountingMonoid(3, SumMonoid(1405)) }, Fingerprint { range: Range(667, 717), fp: EncodedCountingMonoid(5, SumMonoid(3490)) }, Fingerprint { range: Range(717, 782), fp: EncodedCountingMonoid(5, SumMonoid(3772)) }, Fingerprint { range: Range(782, 868), fp: EncodedCountingMonoid(4, SumMonoid(3261)) }, Fingerprint { range: Range(868, 882), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }, Fingerprint { range: Range(882, 944), fp: EncodedCountingMonoid(3, SumMonoid(2782)) }], item_sets: [ItemSet { range: Range(248, 304), items: [253, 303], want_response: true }, ItemSet { range: Range(304, 326), items: [304], want_response: true }, ItemSet { range: Range(500, 510), items: [500, 504], want_response: true }, ItemSet { range: Range(510, 623), items: [525, 561], want_response: true }, ItemSet { range: Range(623, 667), items: [623], want_response: true }, ItemSet { range: Range(944, 968), items: [944, 967], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(248, 304), items: [248, 259, 280, 296, 301], want_response: false }, ItemSet { range: Range(304, 326), items: [319], want_response: false }, ItemSet { range: Range(500, 510), items: [507], want_response: false }, ItemSet { range: Range(510, 623), items: [510, 513, 537, 549, 551], want_response: false }, ItemSet { range: Range(623, 667), items: [638], want_response: false }, ItemSet { range: Range(944, 968), items: [], want_response: false }, ItemSet { range: Range(17, 142), items: [35, 47], want_response: true }, ItemSet { range: Range(142, 160), items: [142], want_response: true }, ItemSet { range: Range(160, 217), items: [175, 181], want_response: true }, ItemSet { range: Range(217, 248), items: [217, 226], want_response: true }, ItemSet { range: Range(326, 389), items: [354, 364], want_response: true }, ItemSet { range: Range(389, 418), items: [395, 409], want_response: true }, ItemSet { range: Range(418, 460), items: [418, 426], want_response: true }, ItemSet { range: Range(460, 500), items: [460], want_response: true }, ItemSet { range: Range(667, 717), items: [667], want_response: true }, ItemSet { range: Range(717, 758), items: [728, 734], want_response: true }, ItemSet { range: Range(758, 782), items: [758, 760], want_response: true }, ItemSet { range: Range(782, 865), items: [827, 853], want_response: true }, ItemSet { range: Range(865, 868), items: [865, 867], want_response: true }, ItemSet { range: Range(868, 882), items: [878], want_response: true }, ItemSet { range: Range(882, 885), items: [882, 883], want_response: true }, ItemSet { range: Range(885, 944), items: [885, 900], want_response: true }], wants: [253, 303, 304, 500, 504, 525, 561, 623, 944, 967], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(17, 142), items: [17, 29, 47, 140], want_response: false }, ItemSet { range: Range(142, 160), items: [142, 155], want_response: false }, ItemSet { range: Range(160, 217), items: [160, 165, 170, 178, 210], want_response: false }, ItemSet { range: Range(217, 248), items: [], want_response: false }, ItemSet { range: Range(326, 389), items: [326, 351, 362, 381], want_response: false }, ItemSet { range: Range(389, 418), items: [389, 395, 398, 410], want_response: false }, ItemSet { range: Range(418, 460), items: [440], want_response: false }, ItemSet { range: Range(460, 500), items: [475, 490], want_response: false }, ItemSet { range: Range(667, 717), items: [686, 689, 696, 704, 715], want_response: false }, ItemSet { range: Range(717, 758), items: [717, 753], want_response: false }, ItemSet { range: Range(758, 782), items: [760, 761, 781], want_response: false }, ItemSet { range: Range(782, 865), items: [782, 784, 839, 856], want_response: false }, ItemSet { range: Range(865, 868), items: [], want_response: false }, ItemSet { range: Range(868, 882), items: [868, 870, 873], want_response: false }, ItemSet { range: Range(882, 885), items: [], want_response: false }, ItemSet { range: Range(885, 944), items: [918, 924, 940], want_response: false }], wants: [248, 259, 280, 296, 301, 319, 507, 510, 513, 537, 549, 551, 638, 35, 175, 181, 217, 226, 354, 364, 409, 418, 426, 460, 667, 728, 734, 758, 827, 853, 865, 867, 878, 882, 883, 885, 900], provide: [(253, true), (303, true), (304, true), (500, true), (504, true), (525, true), (561, true), (623, true), (944, true), (967, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [17, 29, 140, 155, 160, 165, 170, 178, 210, 326, 351, 362, 381, 389, 398, 410, 440, 475, 490, 686, 689, 696, 704, 715, 717, 753, 761, 781, 782, 784, 839, 856, 868, 870, 873, 918, 924, 940], provide: [(248, true), (259, true), (280, true), (296, true), (301, true), (319, true), (507, true), (510, true), (513, true), (537, true), (549, true), (551, true), (638, true), (35, true), (175, true), (181, true), (217, true), (226, true), (354, true), (364, true), (409, true), (418, true), (426, true), (460, true), (667, true), (728, true), (734, true), (758, true), (827, true), (853, true), (865, true), (867, true), (878, true), (882, true), (883, true), (885, true), (900, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(17, true), (29, true), (140, true), (155, true), (160, true), (165, true), (170, true), (178, true), (210, true), (326, true), (351, true), (362, true), (381, true), (389, true), (398, true), (410, true), (440, true), (475, true), (490, true), (686, true), (689, true), (696, true), (704, true), (715, true), (717, true), (753, true), (761, true), (781, true), (782, true), (784, true), (839, true), (856, true), (868, true), (870, true), (873, true), (918, true), (924, true), (940, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 29, 47, 140, 142, 155, 160, 165, 170, 178, 210, 253, 303, 304, 326, 351, 362, 381, 389, 395, 398, 410, 440, 475, 490, 500, 504, 525, 561, 623, 686, 689, 696, 704, 715, 717, 753, 760, 761, 781, 782, 784, 839, 856, 868, 870, 873, 918, 924, 940, 944, 967} + [4, 248, 259, 280, 296, 301, 319, 507, 510, 513, 537, 549, 551, 638, 35, 175, 181, 217, 226, 354, 364, 409, 418, 426, 460, 667, 728, 734, 758, 827, 853, 865, 867, 878, 882, 883, 885, 900]
[INFO] [stdout] b all: {4, 35, 47, 142, 175, 181, 217, 226, 248, 259, 280, 296, 301, 319, 354, 364, 395, 409, 418, 426, 460, 507, 510, 513, 537, 549, 551, 638, 667, 728, 734, 758, 760, 827, 853, 865, 867, 878, 882, 883, 885, 900} + [253, 303, 304, 500, 504, 525, 561, 623, 944, 967, 17, 29, 140, 155, 160, 165, 170, 178, 210, 326, 351, 362, 381, 389, 398, 410, 440, 475, 490, 686, 689, 696, 704, 715, 717, 753, 761, 781, 782, 784, 839, 856, 868, 870, 873, 918, 924, 940]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 17, 29, 35, 47, 140, 142, 155, 160, 165, 170, 175, 178, 181, 210, 217, 226, 248, 253, 259, 280, 296, 301, 303, 304, 319, 326, 351, 354, 362, 364, 381, 389, 395, 398, 409, 410, 418, 426, 440, 460, 475, 490, 500, 504, 507, 510, 513, 525, 537, 549, 551, 561, 623, 638, 667, 686, 689, 696, 704, 715, 717, 728, 734, 753, 758, 760, 761, 781, 782, 784, 827, 839, 853, 856, 865, 867, 868, 870, 873, 878, 882, 883, 885, 900, 918, 924, 940, 944, 967]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 17, 29, 35, 47, 140, 142, 155, 160, 165, 170, 175, 178, 181, 210, 217, 226, 248, 253, 259, 280, 296, 301, 303, 304, 319, 326, 351, 354, 362, 364, 381, 389, 395, 398, 409, 410, 418, 426, 440, 460, 475, 490, 500, 504, 507, 510, 513, 525, 537, 549, 551, 561, 623, 638, 667, 686, 689, 696, 704, 715, 717, 728, 734, 753, 758, 760, 761, 781, 782, 784, 827, 839, 853, 856, 865, 867, 868, 870, 873, 878, 882, 883, 885, 900, 918, 924, 940, 944, 967], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 17, 29, 35, 47, 140, 142, 155, 160, 165, 170, 175, 178, 181, 210, 217, 226, 248, 253, 259, 280, 296, 301, 303, 304, 319, 326, 351, 354, 362, 364, 381, 389, 395, 398, 409, 410, 418, 426, 440, 460, 475, 490, 500, 504, 507, 510, 513, 525, 537, 549, 551, 561, 623, 638, 667, 686, 689, 696, 704, 715, 717, 728, 734, 753, 758, 760, 761, 781, 782, 784, 827, 839, 853, 856, 865, 867, 868, 870, 873, 878, 882, 883, 885, 900, 918, 924, 940, 944, 967], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {23, 25, 47, 63, 72, 78, 107, 131, 145, 147, 199, 209, 215, 217, 256, 272, 281, 282, 291, 297, 307, 308, 315, 320, 328, 345, 355, 358, 365, 367, 369, 381, 395, 402, 404, 425, 454, 462, 486, 489, 505, 507, 509, 528, 537, 542, 544, 582, 597, 614, 636, 639, 673, 676, 680, 683, 697, 728, 729, 732, 745, 770, 793, 802, 830, 845, 851, 853, 873, 874, 879, 889, 890, 891, 910, 933, 949, 950, 972, 978}
[INFO] [stdout] b items: {6, 36, 48, 54, 88, 94, 126, 133, 157, 192, 197, 207, 210, 225, 254, 258, 265, 309, 317, 325, 334, 348, 365, 371, 388, 390, 427, 484, 487, 495, 524, 527, 566, 610, 619, 623, 627, 641, 643, 655, 666, 679, 689, 731, 750, 764, 801, 877, 912, 917, 927, 951, 952, 967, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 979), fp: EncodedCountingMonoid(80, SumMonoid(40807)) }], item_sets: [ItemSet { range: Range(979, 23), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 487), fp: EncodedCountingMonoid(27, SumMonoid(6602)) }, Fingerprint { range: Range(487, 979), fp: EncodedCountingMonoid(26, SumMonoid(18600)) }], item_sets: [ItemSet { range: Range(979, 23), items: [999, 6], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 307), fp: EncodedCountingMonoid(20, SumMonoid(3357)) }, Fingerprint { range: Range(307, 487), fp: EncodedCountingMonoid(19, SumMonoid(7146)) }, Fingerprint { range: Range(487, 745), fp: EncodedCountingMonoid(21, SumMonoid(12827)) }, Fingerprint { range: Range(745, 979), fp: EncodedCountingMonoid(20, SumMonoid(17477)) }], item_sets: [], wants: [999, 6], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 192), fp: EncodedCountingMonoid(8, SumMonoid(736)) }, Fingerprint { range: Range(192, 307), fp: EncodedCountingMonoid(8, SumMonoid(1808)) }, Fingerprint { range: Range(307, 371), fp: EncodedCountingMonoid(6, SumMonoid(1998)) }, Fingerprint { range: Range(371, 487), fp: EncodedCountingMonoid(5, SumMonoid(2060)) }, Fingerprint { range: Range(487, 627), fp: EncodedCountingMonoid(8, SumMonoid(4451)) }, Fingerprint { range: Range(627, 745), fp: EncodedCountingMonoid(8, SumMonoid(5331)) }, Fingerprint { range: Range(745, 917), fp: EncodedCountingMonoid(5, SumMonoid(4104)) }, Fingerprint { range: Range(917, 979), fp: EncodedCountingMonoid(5, SumMonoid(4714)) }], item_sets: [], wants: [], provide: [(999, true), (6, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 78), fp: EncodedCountingMonoid(5, SumMonoid(230)) }, Fingerprint { range: Range(78, 192), fp: EncodedCountingMonoid(5, SumMonoid(608)) }, Fingerprint { range: Range(192, 272), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(272, 307), fp: EncodedCountingMonoid(5, SumMonoid(1423)) }, Fingerprint { range: Range(307, 355), fp: EncodedCountingMonoid(6, SumMonoid(1923)) }, Fingerprint { range: Range(355, 371), fp: EncodedCountingMonoid(5, SumMonoid(1814)) }, Fingerprint { range: Range(371, 425), fp: EncodedCountingMonoid(4, SumMonoid(1582)) }, Fingerprint { range: Range(425, 487), fp: EncodedCountingMonoid(4, SumMonoid(1827)) }, Fingerprint { range: Range(487, 542), fp: EncodedCountingMonoid(6, SumMonoid(3075)) }, Fingerprint { range: Range(542, 627), fp: EncodedCountingMonoid(5, SumMonoid(2879)) }, Fingerprint { range: Range(627, 683), fp: EncodedCountingMonoid(5, SumMonoid(3304)) }, Fingerprint { range: Range(683, 745), fp: EncodedCountingMonoid(5, SumMonoid(3569)) }, Fingerprint { range: Range(745, 873), fp: EncodedCountingMonoid(8, SumMonoid(6489)) }, Fingerprint { range: Range(873, 917), fp: EncodedCountingMonoid(7, SumMonoid(6206)) }, Fingerprint { range: Range(917, 972), fp: EncodedCountingMonoid(3, SumMonoid(2832)) }], item_sets: [ItemSet { range: Range(972, 979), items: [972, 978], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(78, 133), fp: EncodedCountingMonoid(3, SumMonoid(308)) }, Fingerprint { range: Range(192, 225), fp: EncodedCountingMonoid(4, SumMonoid(806)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(4, SumMonoid(1002)) }, Fingerprint { range: Range(307, 334), fp: EncodedCountingMonoid(3, SumMonoid(951)) }, Fingerprint { range: Range(627, 655), fp: EncodedCountingMonoid(3, SumMonoid(1911)) }, Fingerprint { range: Range(655, 683), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(917, 952), fp: EncodedCountingMonoid(3, SumMonoid(2795)) }], item_sets: [ItemSet { range: Range(972, 979), items: [], want_response: false }, ItemSet { range: Range(23, 54), items: [36, 48], want_response: true }, ItemSet { range: Range(54, 78), items: [54], want_response: true }, ItemSet { range: Range(133, 192), items: [133, 157], want_response: true }, ItemSet { range: Range(272, 307), items: [], want_response: true }, ItemSet { range: Range(334, 355), items: [334, 348], want_response: true }, ItemSet { range: Range(355, 371), items: [365], want_response: true }, ItemSet { range: Range(371, 390), items: [371, 388], want_response: true }, ItemSet { range: Range(390, 425), items: [390], want_response: true }, ItemSet { range: Range(425, 487), items: [427, 484], want_response: true }, ItemSet { range: Range(487, 524), items: [487, 495], want_response: true }, ItemSet { range: Range(524, 542), items: [524, 527], want_response: true }, ItemSet { range: Range(542, 619), items: [566, 610], want_response: true }, ItemSet { range: Range(619, 627), items: [619, 623], want_response: true }, ItemSet { range: Range(683, 745), items: [689, 731], want_response: true }, ItemSet { range: Range(745, 801), items: [750, 764], want_response: true }, ItemSet { range: Range(801, 873), items: [801], want_response: true }, ItemSet { range: Range(873, 917), items: [877, 912], want_response: true }, ItemSet { range: Range(952, 972), items: [952, 967], want_response: true }], wants: [972, 978], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(307, 320), fp: EncodedCountingMonoid(3, SumMonoid(930)) }], item_sets: [ItemSet { range: Range(23, 54), items: [23, 25, 47], want_response: false }, ItemSet { range: Range(54, 78), items: [63, 72], want_response: false }, ItemSet { range: Range(133, 192), items: [145, 147], want_response: false }, ItemSet { range: Range(272, 307), items: [272, 281, 282, 291, 297], want_response: false }, ItemSet { range: Range(334, 355), items: [345], want_response: false }, ItemSet { range: Range(355, 371), items: [355, 358, 365, 367, 369], want_response: false }, ItemSet { range: Range(371, 390), items: [381], want_response: false }, ItemSet { range: Range(390, 425), items: [395, 402, 404], want_response: false }, ItemSet { range: Range(425, 487), items: [425, 454, 462, 486], want_response: false }, ItemSet { range: Range(487, 524), items: [489, 505, 507, 509], want_response: false }, ItemSet { range: Range(524, 542), items: [528, 537], want_response: false }, ItemSet { range: Range(542, 619), items: [542, 544, 582, 597, 614], want_response: false }, ItemSet { range: Range(619, 627), items: [], want_response: false }, ItemSet { range: Range(683, 745), items: [683, 697, 728, 729, 732], want_response: false }, ItemSet { range: Range(745, 801), items: [745, 770, 793], want_response: false }, ItemSet { range: Range(801, 873), items: [802, 830, 845, 851, 853], want_response: false }, ItemSet { range: Range(873, 917), items: [873, 874, 879, 889, 890, 891, 910], want_response: false }, ItemSet { range: Range(952, 972), items: [], want_response: false }, ItemSet { range: Range(78, 131), items: [78, 107], want_response: true }, ItemSet { range: Range(131, 133), items: [131], want_response: true }, ItemSet { range: Range(192, 215), items: [199, 209], want_response: true }, ItemSet { range: Range(215, 225), items: [215, 217], want_response: true }, ItemSet { range: Range(225, 272), items: [256], want_response: true }, ItemSet { range: Range(320, 334), items: [320, 328], want_response: true }, ItemSet { range: Range(627, 655), items: [636, 639], want_response: true }, ItemSet { range: Range(655, 680), items: [673, 676], want_response: true }, ItemSet { range: Range(680, 683), items: [680], want_response: true }, ItemSet { range: Range(917, 950), items: [933, 949], want_response: true }, ItemSet { range: Range(950, 952), items: [950], want_response: true }], wants: [36, 48, 54, 133, 157, 334, 348, 371, 388, 390, 427, 484, 487, 495, 524, 527, 566, 610, 619, 623, 689, 731, 750, 764, 801, 877, 912, 952, 967], provide: [(972, true), (978, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(78, 131), items: [88, 94, 126], want_response: false }, ItemSet { range: Range(131, 133), items: [], want_response: false }, ItemSet { range: Range(192, 215), items: [192, 197, 207, 210], want_response: false }, ItemSet { range: Range(215, 225), items: [], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 254, 258, 265], want_response: false }, ItemSet { range: Range(320, 334), items: [325], want_response: false }, ItemSet { range: Range(627, 655), items: [627, 641, 643], want_response: false }, ItemSet { range: Range(655, 680), items: [655, 666, 679], want_response: false }, ItemSet { range: Range(680, 683), items: [], want_response: false }, ItemSet { range: Range(917, 950), items: [917, 927], want_response: false }, ItemSet { range: Range(950, 952), items: [951], want_response: false }, ItemSet { range: Range(307, 320), items: [309, 317], want_response: true }], wants: [23, 25, 47, 63, 72, 145, 147, 272, 281, 282, 291, 297, 345, 355, 358, 367, 369, 381, 395, 402, 404, 425, 454, 462, 486, 489, 505, 507, 509, 528, 537, 542, 544, 582, 597, 614, 683, 697, 728, 729, 732, 745, 770, 793, 802, 830, 845, 851, 853, 873, 874, 879, 889, 890, 891, 910, 78, 107, 131, 199, 209, 215, 217, 256, 320, 328, 636, 639, 673, 676, 680, 933, 949, 950], provide: [(36, true), (48, true), (54, true), (133, true), (157, true), (334, true), (348, true), (371, true), (388, true), (390, true), (427, true), (484, true), (487, true), (495, true), (524, true), (527, true), (566, true), (610, true), (619, true), (623, true), (689, true), (731, true), (750, true), (764, true), (801, true), (877, true), (912, true), (952, true), (967, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(307, 320), items: [307, 308, 315], want_response: false }], wants: [88, 94, 126, 192, 197, 207, 210, 225, 254, 258, 265, 325, 627, 641, 643, 655, 666, 679, 917, 927, 951, 309, 317], provide: [(23, true), (25, true), (47, true), (63, true), (72, true), (145, true), (147, true), (272, true), (281, true), (282, true), (291, true), (297, true), (345, true), (355, true), (358, true), (367, true), (369, true), (381, true), (395, true), (402, true), (404, true), (425, true), (454, true), (462, true), (486, true), (489, true), (505, true), (507, true), (509, true), (528, true), (537, true), (542, true), (544, true), (582, true), (597, true), (614, true), (683, true), (697, true), (728, true), (729, true), (732, true), (745, true), (770, true), (793, true), (802, true), (830, true), (845, true), (851, true), (853, true), (873, true), (874, true), (879, true), (889, true), (890, true), (891, true), (910, true), (78, true), (107, true), (131, true), (199, true), (209, true), (215, true), (217, true), (256, true), (320, true), (328, true), (636, true), (639, true), (673, true), (676, true), (680, true), (933, true), (949, true), (950, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [307, 308, 315], provide: [(88, true), (94, true), (126, true), (192, true), (197, true), (207, true), (210, true), (225, true), (254, true), (258, true), (265, true), (325, true), (627, true), (641, true), (643, true), (655, true), (666, true), (679, true), (917, true), (927, true), (951, true), (309, true), (317, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(307, true), (308, true), (315, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {23, 25, 47, 63, 72, 78, 107, 131, 145, 147, 199, 209, 215, 217, 256, 272, 281, 282, 291, 297, 307, 308, 315, 320, 328, 345, 355, 358, 365, 367, 369, 381, 395, 402, 404, 425, 454, 462, 486, 489, 505, 507, 509, 528, 537, 542, 544, 582, 597, 614, 636, 639, 673, 676, 680, 683, 697, 728, 729, 732, 745, 770, 793, 802, 830, 845, 851, 853, 873, 874, 879, 889, 890, 891, 910, 933, 949, 950, 972, 978} + [999, 6, 36, 48, 54, 133, 157, 334, 348, 371, 388, 390, 427, 484, 487, 495, 524, 527, 566, 610, 619, 623, 689, 731, 750, 764, 801, 877, 912, 952, 967, 88, 94, 126, 192, 197, 207, 210, 225, 254, 258, 265, 325, 627, 641, 643, 655, 666, 679, 917, 927, 951, 309, 317]
[INFO] [stdout] b all: {6, 36, 48, 54, 88, 94, 126, 133, 157, 192, 197, 207, 210, 225, 254, 258, 265, 309, 317, 325, 334, 348, 365, 371, 388, 390, 427, 484, 487, 495, 524, 527, 566, 610, 619, 623, 627, 641, 643, 655, 666, 679, 689, 731, 750, 764, 801, 877, 912, 917, 927, 951, 952, 967, 999} + [972, 978, 23, 25, 47, 63, 72, 145, 147, 272, 281, 282, 291, 297, 345, 355, 358, 367, 369, 381, 395, 402, 404, 425, 454, 462, 486, 489, 505, 507, 509, 528, 537, 542, 544, 582, 597, 614, 683, 697, 728, 729, 732, 745, 770, 793, 802, 830, 845, 851, 853, 873, 874, 879, 889, 890, 891, 910, 78, 107, 131, 199, 209, 215, 217, 256, 320, 328, 636, 639, 673, 676, 680, 933, 949, 950, 307, 308, 315]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 23, 25, 36, 47, 48, 54, 63, 72, 78, 88, 94, 107, 126, 131, 133, 145, 147, 157, 192, 197, 199, 207, 209, 210, 215, 217, 225, 254, 256, 258, 265, 272, 281, 282, 291, 297, 307, 308, 309, 315, 317, 320, 325, 328, 334, 345, 348, 355, 358, 365, 367, 369, 371, 381, 388, 390, 395, 402, 404, 425, 427, 454, 462, 484, 486, 487, 489, 495, 505, 507, 509, 524, 527, 528, 537, 542, 544, 566, 582, 597, 610, 614, 619, 623, 627, 636, 639, 641, 643, 655, 666, 673, 676, 679, 680, 683, 689, 697, 728, 729, 731, 732, 745, 750, 764, 770, 793, 801, 802, 830, 845, 851, 853, 873, 874, 877, 879, 889, 890, 891, 910, 912, 917, 927, 933, 949, 950, 951, 952, 967, 972, 978, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 23, 25, 36, 47, 48, 54, 63, 72, 78, 88, 94, 107, 126, 131, 133, 145, 147, 157, 192, 197, 199, 207, 209, 210, 215, 217, 225, 254, 256, 258, 265, 272, 281, 282, 291, 297, 307, 308, 309, 315, 317, 320, 325, 328, 334, 345, 348, 355, 358, 365, 367, 369, 371, 381, 388, 390, 395, 402, 404, 425, 427, 454, 462, 484, 486, 487, 489, 495, 505, 507, 509, 524, 527, 528, 537, 542, 544, 566, 582, 597, 610, 614, 619, 623, 627, 636, 639, 641, 643, 655, 666, 673, 676, 679, 680, 683, 689, 697, 728, 729, 731, 732, 745, 750, 764, 770, 793, 801, 802, 830, 845, 851, 853, 873, 874, 877, 879, 889, 890, 891, 910, 912, 917, 927, 933, 949, 950, 951, 952, 967, 972, 978, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 23, 25, 36, 47, 48, 54, 63, 72, 78, 88, 94, 107, 126, 131, 133, 145, 147, 157, 192, 197, 199, 207, 209, 210, 215, 217, 225, 254, 256, 258, 265, 272, 281, 282, 291, 297, 307, 308, 309, 315, 317, 320, 325, 328, 334, 345, 348, 355, 358, 365, 367, 369, 371, 381, 388, 390, 395, 402, 404, 425, 427, 454, 462, 484, 486, 487, 489, 495, 505, 507, 509, 524, 527, 528, 537, 542, 544, 566, 582, 597, 610, 614, 619, 623, 627, 636, 639, 641, 643, 655, 666, 673, 676, 679, 680, 683, 689, 697, 728, 729, 731, 732, 745, 750, 764, 770, 793, 801, 802, 830, 845, 851, 853, 873, 874, 877, 879, 889, 890, 891, 910, 912, 917, 927, 933, 949, 950, 951, 952, 967, 972, 978, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 8, 16, 24, 33, 48, 51, 61, 68, 72, 79, 97, 100, 121, 125, 131, 161, 174, 178, 189, 192, 197, 199, 217, 224, 231, 233, 264, 277, 294, 298, 300, 307, 308, 338, 342, 368, 388, 437, 438, 452, 464, 516, 525, 531, 576, 579, 584, 600, 604, 615, 622, 648, 653, 655, 661, 665, 723, 725, 735, 755, 763, 774, 777, 800, 814, 815, 819, 824, 842, 850, 852, 876, 879, 894, 899, 918, 929, 942, 956, 958, 962, 985}
[INFO] [stdout] b items: {2, 3, 15, 20, 38, 66, 70, 71, 72, 86, 130, 146, 147, 260, 265, 284, 286, 293, 302, 333, 335, 339, 352, 353, 379, 414, 431, 439, 446, 485, 490, 523, 577, 610, 611, 633, 634, 657, 712, 752, 781, 805, 810, 813, 830, 908, 926, 928, 929, 932, 954, 956, 992}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 986), fp: EncodedCountingMonoid(83, SumMonoid(39607)) }], item_sets: [ItemSet { range: Range(986, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 439), fp: EncodedCountingMonoid(26, SumMonoid(5490)) }, Fingerprint { range: Range(439, 986), fp: EncodedCountingMonoid(25, SumMonoid(18141)) }], item_sets: [ItemSet { range: Range(986, 3), items: [992, 2], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 192), fp: EncodedCountingMonoid(20, SumMonoid(1739)) }, Fingerprint { range: Range(192, 439), fp: EncodedCountingMonoid(20, SumMonoid(5852)) }, Fingerprint { range: Range(439, 774), fp: EncodedCountingMonoid(22, SumMonoid(13651)) }, Fingerprint { range: Range(774, 986), fp: EncodedCountingMonoid(21, SumMonoid(18365)) }], item_sets: [], wants: [992, 2], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 71), fp: EncodedCountingMonoid(6, SumMonoid(212)) }, Fingerprint { range: Range(71, 192), fp: EncodedCountingMonoid(6, SumMonoid(652)) }, Fingerprint { range: Range(192, 335), fp: EncodedCountingMonoid(7, SumMonoid(2023)) }, Fingerprint { range: Range(335, 439), fp: EncodedCountingMonoid(7, SumMonoid(2603)) }, Fingerprint { range: Range(439, 611), fp: EncodedCountingMonoid(7, SumMonoid(3570)) }, Fingerprint { range: Range(611, 774), fp: EncodedCountingMonoid(6, SumMonoid(3999)) }, Fingerprint { range: Range(774, 926), fp: EncodedCountingMonoid(6, SumMonoid(4947)) }, Fingerprint { range: Range(926, 986), fp: EncodedCountingMonoid(6, SumMonoid(5625)) }], item_sets: [], wants: [], provide: [(992, true), (2, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 48), fp: EncodedCountingMonoid(5, SumMonoid(84)) }, Fingerprint { range: Range(48, 71), fp: EncodedCountingMonoid(4, SumMonoid(228)) }, Fingerprint { range: Range(71, 131), fp: EncodedCountingMonoid(6, SumMonoid(594)) }, Fingerprint { range: Range(131, 192), fp: EncodedCountingMonoid(5, SumMonoid(833)) }, Fingerprint { range: Range(192, 264), fp: EncodedCountingMonoid(7, SumMonoid(1493)) }, Fingerprint { range: Range(264, 335), fp: EncodedCountingMonoid(7, SumMonoid(2048)) }, Fingerprint { range: Range(335, 388), fp: EncodedCountingMonoid(3, SumMonoid(1048)) }, Fingerprint { range: Range(388, 439), fp: EncodedCountingMonoid(3, SumMonoid(1263)) }, Fingerprint { range: Range(439, 576), fp: EncodedCountingMonoid(5, SumMonoid(2488)) }, Fingerprint { range: Range(576, 611), fp: EncodedCountingMonoid(5, SumMonoid(2943)) }, Fingerprint { range: Range(611, 665), fp: EncodedCountingMonoid(6, SumMonoid(3854)) }, Fingerprint { range: Range(665, 774), fp: EncodedCountingMonoid(6, SumMonoid(4366)) }, Fingerprint { range: Range(774, 850), fp: EncodedCountingMonoid(8, SumMonoid(6465)) }, Fingerprint { range: Range(850, 926), fp: EncodedCountingMonoid(7, SumMonoid(6168)) }, Fingerprint { range: Range(926, 958), fp: EncodedCountingMonoid(3, SumMonoid(2827)) }, Fingerprint { range: Range(958, 986), fp: EncodedCountingMonoid(3, SumMonoid(2905)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(264, 293), fp: EncodedCountingMonoid(3, SumMonoid(835)) }, Fingerprint { range: Range(293, 335), fp: EncodedCountingMonoid(3, SumMonoid(928)) }, Fingerprint { range: Range(335, 353), fp: EncodedCountingMonoid(3, SumMonoid(1026)) }, Fingerprint { range: Range(439, 490), fp: EncodedCountingMonoid(3, SumMonoid(1370)) }, Fingerprint { range: Range(774, 813), fp: EncodedCountingMonoid(3, SumMonoid(2396)) }, Fingerprint { range: Range(926, 932), fp: EncodedCountingMonoid(3, SumMonoid(2783)) }, Fingerprint { range: Range(932, 958), fp: EncodedCountingMonoid(3, SumMonoid(2842)) }], item_sets: [ItemSet { range: Range(3, 20), items: [3, 15], want_response: true }, ItemSet { range: Range(20, 48), items: [20, 38], want_response: true }, ItemSet { range: Range(48, 71), items: [66, 70], want_response: true }, ItemSet { range: Range(71, 86), items: [71, 72], want_response: true }, ItemSet { range: Range(86, 131), items: [86, 130], want_response: true }, ItemSet { range: Range(131, 192), items: [146, 147], want_response: true }, ItemSet { range: Range(192, 264), items: [260], want_response: true }, ItemSet { range: Range(353, 388), items: [353, 379], want_response: true }, ItemSet { range: Range(388, 439), items: [414, 431], want_response: true }, ItemSet { range: Range(490, 576), items: [490, 523], want_response: true }, ItemSet { range: Range(576, 611), items: [577, 610], want_response: true }, ItemSet { range: Range(611, 634), items: [611, 633], want_response: true }, ItemSet { range: Range(634, 665), items: [634, 657], want_response: true }, ItemSet { range: Range(665, 774), items: [712, 752], want_response: true }, ItemSet { range: Range(813, 850), items: [813, 830], want_response: true }, ItemSet { range: Range(850, 926), items: [908], want_response: true }, ItemSet { range: Range(958, 986), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(293, 307), fp: EncodedCountingMonoid(3, SumMonoid(892)) }], item_sets: [ItemSet { range: Range(3, 20), items: [3, 8, 16], want_response: false }, ItemSet { range: Range(20, 48), items: [24, 33], want_response: false }, ItemSet { range: Range(48, 71), items: [48, 51, 61, 68], want_response: false }, ItemSet { range: Range(71, 86), items: [72, 79], want_response: false }, ItemSet { range: Range(86, 131), items: [97, 100, 121, 125], want_response: false }, ItemSet { range: Range(131, 192), items: [131, 161, 174, 178, 189], want_response: false }, ItemSet { range: Range(192, 264), items: [192, 197, 199, 217, 224, 231, 233], want_response: false }, ItemSet { range: Range(353, 388), items: [368], want_response: false }, ItemSet { range: Range(388, 439), items: [388, 437, 438], want_response: false }, ItemSet { range: Range(490, 576), items: [516, 525, 531], want_response: false }, ItemSet { range: Range(576, 611), items: [576, 579, 584, 600, 604], want_response: false }, ItemSet { range: Range(611, 634), items: [615, 622], want_response: false }, ItemSet { range: Range(634, 665), items: [648, 653, 655, 661], want_response: false }, ItemSet { range: Range(665, 774), items: [665, 723, 725, 735, 755, 763], want_response: false }, ItemSet { range: Range(813, 850), items: [814, 815, 819, 824, 842], want_response: false }, ItemSet { range: Range(850, 926), items: [850, 852, 876, 879, 894, 899, 918], want_response: false }, ItemSet { range: Range(958, 986), items: [958, 962, 985], want_response: false }, ItemSet { range: Range(264, 293), items: [264, 277], want_response: true }, ItemSet { range: Range(307, 335), items: [307, 308], want_response: true }, ItemSet { range: Range(335, 353), items: [338, 342], want_response: true }, ItemSet { range: Range(439, 490), items: [452, 464], want_response: true }, ItemSet { range: Range(774, 800), items: [774, 777], want_response: true }, ItemSet { range: Range(800, 813), items: [800], want_response: true }, ItemSet { range: Range(926, 932), items: [929], want_response: true }, ItemSet { range: Range(932, 958), items: [942, 956], want_response: true }], wants: [15, 20, 38, 66, 70, 71, 86, 130, 146, 147, 260, 353, 379, 414, 431, 490, 523, 577, 610, 611, 633, 634, 657, 712, 752, 813, 830, 908], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(264, 293), items: [265, 284, 286], want_response: false }, ItemSet { range: Range(307, 335), items: [333], want_response: false }, ItemSet { range: Range(335, 353), items: [335, 339, 352], want_response: false }, ItemSet { range: Range(439, 490), items: [439, 446, 485], want_response: false }, ItemSet { range: Range(774, 800), items: [781], want_response: false }, ItemSet { range: Range(800, 813), items: [805, 810], want_response: false }, ItemSet { range: Range(926, 932), items: [926, 928, 929], want_response: false }, ItemSet { range: Range(932, 958), items: [932, 954, 956], want_response: false }, ItemSet { range: Range(293, 307), items: [293, 302], want_response: true }], wants: [8, 16, 24, 33, 48, 51, 61, 68, 79, 97, 100, 121, 125, 131, 161, 174, 178, 189, 192, 197, 199, 217, 224, 231, 233, 368, 388, 437, 438, 516, 525, 531, 576, 579, 584, 600, 604, 615, 622, 648, 653, 655, 661, 665, 723, 725, 735, 755, 763, 814, 815, 819, 824, 842, 850, 852, 876, 879, 894, 899, 918, 958, 962, 985, 264, 277, 307, 308, 338, 342, 452, 464, 774, 777, 800, 942], provide: [(15, true), (20, true), (38, true), (66, true), (70, true), (71, true), (86, true), (130, true), (146, true), (147, true), (260, true), (353, true), (379, true), (414, true), (431, true), (490, true), (523, true), (577, true), (610, true), (611, true), (633, true), (634, true), (657, true), (712, true), (752, true), (813, true), (830, true), (908, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(293, 307), items: [294, 298, 300], want_response: false }], wants: [265, 284, 286, 333, 335, 339, 352, 439, 446, 485, 781, 805, 810, 926, 928, 932, 954, 293, 302], provide: [(8, true), (16, true), (24, true), (33, true), (48, true), (51, true), (61, true), (68, true), (79, true), (97, true), (100, true), (121, true), (125, true), (131, true), (161, true), (174, true), (178, true), (189, true), (192, true), (197, true), (199, true), (217, true), (224, true), (231, true), (233, true), (368, true), (388, true), (437, true), (438, true), (516, true), (525, true), (531, true), (576, true), (579, true), (584, true), (600, true), (604, true), (615, true), (622, true), (648, true), (653, true), (655, true), (661, true), (665, true), (723, true), (725, true), (735, true), (755, true), (763, true), (814, true), (815, true), (819, true), (824, true), (842, true), (850, true), (852, true), (876, true), (879, true), (894, true), (899, true), (918, true), (958, true), (962, true), (985, true), (264, true), (277, true), (307, true), (308, true), (338, true), (342, true), (452, true), (464, true), (774, true), (777, true), (800, true), (942, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [294, 298, 300], provide: [(265, true), (284, true), (286, true), (333, true), (335, true), (339, true), (352, true), (439, true), (446, true), (485, true), (781, true), (805, true), (810, true), (926, true), (928, true), (932, true), (954, true), (293, true), (302, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(294, true), (298, true), (300, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 8, 16, 24, 33, 48, 51, 61, 68, 72, 79, 97, 100, 121, 125, 131, 161, 174, 178, 189, 192, 197, 199, 217, 224, 231, 233, 264, 277, 294, 298, 300, 307, 308, 338, 342, 368, 388, 437, 438, 452, 464, 516, 525, 531, 576, 579, 584, 600, 604, 615, 622, 648, 653, 655, 661, 665, 723, 725, 735, 755, 763, 774, 777, 800, 814, 815, 819, 824, 842, 850, 852, 876, 879, 894, 899, 918, 929, 942, 956, 958, 962, 985} + [992, 2, 15, 20, 38, 66, 70, 71, 86, 130, 146, 147, 260, 353, 379, 414, 431, 490, 523, 577, 610, 611, 633, 634, 657, 712, 752, 813, 830, 908, 265, 284, 286, 333, 335, 339, 352, 439, 446, 485, 781, 805, 810, 926, 928, 932, 954, 293, 302]
[INFO] [stdout] b all: {2, 3, 15, 20, 38, 66, 70, 71, 72, 86, 130, 146, 147, 260, 265, 284, 286, 293, 302, 333, 335, 339, 352, 353, 379, 414, 431, 439, 446, 485, 490, 523, 577, 610, 611, 633, 634, 657, 712, 752, 781, 805, 810, 813, 830, 908, 926, 928, 929, 932, 954, 956, 992} + [8, 16, 24, 33, 48, 51, 61, 68, 79, 97, 100, 121, 125, 131, 161, 174, 178, 189, 192, 197, 199, 217, 224, 231, 233, 368, 388, 437, 438, 516, 525, 531, 576, 579, 584, 600, 604, 615, 622, 648, 653, 655, 661, 665, 723, 725, 735, 755, 763, 814, 815, 819, 824, 842, 850, 852, 876, 879, 894, 899, 918, 958, 962, 985, 264, 277, 307, 308, 338, 342, 452, 464, 774, 777, 800, 942, 294, 298, 300]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 3, 8, 15, 16, 20, 24, 33, 38, 48, 51, 61, 66, 68, 70, 71, 72, 79, 86, 97, 100, 121, 125, 130, 131, 146, 147, 161, 174, 178, 189, 192, 197, 199, 217, 224, 231, 233, 260, 264, 265, 277, 284, 286, 293, 294, 298, 300, 302, 307, 308, 333, 335, 338, 339, 342, 352, 353, 368, 379, 388, 414, 431, 437, 438, 439, 446, 452, 464, 485, 490, 516, 523, 525, 531, 576, 577, 579, 584, 600, 604, 610, 611, 615, 622, 633, 634, 648, 653, 655, 657, 661, 665, 712, 723, 725, 735, 752, 755, 763, 774, 777, 781, 800, 805, 810, 813, 814, 815, 819, 824, 830, 842, 850, 852, 876, 879, 894, 899, 908, 918, 926, 928, 929, 932, 942, 954, 956, 958, 962, 985, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 3, 8, 15, 16, 20, 24, 33, 38, 48, 51, 61, 66, 68, 70, 71, 72, 79, 86, 97, 100, 121, 125, 130, 131, 146, 147, 161, 174, 178, 189, 192, 197, 199, 217, 224, 231, 233, 260, 264, 265, 277, 284, 286, 293, 294, 298, 300, 302, 307, 308, 333, 335, 338, 339, 342, 352, 353, 368, 379, 388, 414, 431, 437, 438, 439, 446, 452, 464, 485, 490, 516, 523, 525, 531, 576, 577, 579, 584, 600, 604, 610, 611, 615, 622, 633, 634, 648, 653, 655, 657, 661, 665, 712, 723, 725, 735, 752, 755, 763, 774, 777, 781, 800, 805, 810, 813, 814, 815, 819, 824, 830, 842, 850, 852, 876, 879, 894, 899, 908, 918, 926, 928, 929, 932, 942, 954, 956, 958, 962, 985, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 3, 8, 15, 16, 20, 24, 33, 38, 48, 51, 61, 66, 68, 70, 71, 72, 79, 86, 97, 100, 121, 125, 130, 131, 146, 147, 161, 174, 178, 189, 192, 197, 199, 217, 224, 231, 233, 260, 264, 265, 277, 284, 286, 293, 294, 298, 300, 302, 307, 308, 333, 335, 338, 339, 342, 352, 353, 368, 379, 388, 414, 431, 437, 438, 439, 446, 452, 464, 485, 490, 516, 523, 525, 531, 576, 577, 579, 584, 600, 604, 610, 611, 615, 622, 633, 634, 648, 653, 655, 657, 661, 665, 712, 723, 725, 735, 752, 755, 763, 774, 777, 781, 800, 805, 810, 813, 814, 815, 819, 824, 830, 842, 850, 852, 876, 879, 894, 899, 908, 918, 926, 928, 929, 932, 942, 954, 956, 958, 962, 985, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 6, 7, 10, 12, 21, 22, 64, 90, 96, 109, 124, 127, 139, 141, 143, 153, 168, 187, 194, 195, 230, 255, 260, 261, 265, 281, 287, 303, 313, 319, 325, 329, 344, 346, 348, 359, 360, 361, 364, 367, 376, 378, 386, 393, 402, 408, 433, 442, 469, 470, 482, 483, 492, 500, 503, 516, 565, 595, 611, 620, 634, 680, 695, 696, 697, 757, 760, 770, 788, 805, 831, 838, 856, 861, 879, 892, 893, 908, 909, 912, 922, 940, 945, 947, 957, 964, 973, 982, 998}
[INFO] [stdout] b items: {39, 41, 43, 45, 52, 55, 72, 77, 117, 124, 127, 133, 145, 193, 194, 196, 235, 248, 263, 286, 316, 326, 328, 384, 399, 404, 410, 425, 433, 436, 445, 446, 484, 493, 515, 540, 548, 559, 572, 622, 647, 666, 677, 680, 681, 682, 720, 757, 802, 821, 829, 852, 859, 864, 867, 874, 880, 909, 912, 921, 924, 939, 948, 951, 995}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 999), fp: EncodedCountingMonoid(90, SumMonoid(42502)) }], item_sets: [ItemSet { range: Range(999, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 493), fp: EncodedCountingMonoid(33, SumMonoid(7921)) }, Fingerprint { range: Range(493, 999), fp: EncodedCountingMonoid(32, SumMonoid(24506)) }], item_sets: [ItemSet { range: Range(999, 4), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 287), fp: EncodedCountingMonoid(27, SumMonoid(3564)) }, Fingerprint { range: Range(287, 493), fp: EncodedCountingMonoid(27, SumMonoid(10339)) }, Fingerprint { range: Range(493, 838), fp: EncodedCountingMonoid(18, SumMonoid(12023)) }, Fingerprint { range: Range(838, 999), fp: EncodedCountingMonoid(18, SumMonoid(16576)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 127), fp: EncodedCountingMonoid(10, SumMonoid(665)) }, Fingerprint { range: Range(127, 287), fp: EncodedCountingMonoid(10, SumMonoid(2020)) }, Fingerprint { range: Range(287, 425), fp: EncodedCountingMonoid(7, SumMonoid(2567)) }, Fingerprint { range: Range(425, 493), fp: EncodedCountingMonoid(6, SumMonoid(2669)) }, Fingerprint { range: Range(493, 677), fp: EncodedCountingMonoid(9, SumMonoid(5162)) }, Fingerprint { range: Range(677, 838), fp: EncodedCountingMonoid(9, SumMonoid(6649)) }, Fingerprint { range: Range(838, 912), fp: EncodedCountingMonoid(7, SumMonoid(6105)) }, Fingerprint { range: Range(912, 999), fp: EncodedCountingMonoid(7, SumMonoid(6590)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 22), fp: EncodedCountingMonoid(6, SumMonoid(60)) }, Fingerprint { range: Range(22, 127), fp: EncodedCountingMonoid(6, SumMonoid(505)) }, Fingerprint { range: Range(127, 195), fp: EncodedCountingMonoid(8, SumMonoid(1252)) }, Fingerprint { range: Range(195, 287), fp: EncodedCountingMonoid(7, SumMonoid(1747)) }, Fingerprint { range: Range(287, 360), fp: EncodedCountingMonoid(10, SumMonoid(3273)) }, Fingerprint { range: Range(360, 425), fp: EncodedCountingMonoid(10, SumMonoid(3795)) }, Fingerprint { range: Range(425, 482), fp: EncodedCountingMonoid(4, SumMonoid(1814)) }, Fingerprint { range: Range(482, 493), fp: EncodedCountingMonoid(3, SumMonoid(1457)) }, Fingerprint { range: Range(493, 595), fp: EncodedCountingMonoid(4, SumMonoid(2084)) }, Fingerprint { range: Range(595, 677), fp: EncodedCountingMonoid(4, SumMonoid(2460)) }, Fingerprint { range: Range(677, 760), fp: EncodedCountingMonoid(5, SumMonoid(3525)) }, Fingerprint { range: Range(760, 838), fp: EncodedCountingMonoid(5, SumMonoid(3954)) }, Fingerprint { range: Range(838, 892), fp: EncodedCountingMonoid(4, SumMonoid(3434)) }, Fingerprint { range: Range(892, 912), fp: EncodedCountingMonoid(4, SumMonoid(3602)) }, Fingerprint { range: Range(912, 957), fp: EncodedCountingMonoid(5, SumMonoid(4666)) }, Fingerprint { range: Range(957, 999), fp: EncodedCountingMonoid(5, SumMonoid(4874)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(22, 55), fp: EncodedCountingMonoid(5, SumMonoid(220)) }, Fingerprint { range: Range(55, 127), fp: EncodedCountingMonoid(5, SumMonoid(445)) }, Fingerprint { range: Range(127, 193), fp: EncodedCountingMonoid(3, SumMonoid(405)) }, Fingerprint { range: Range(195, 263), fp: EncodedCountingMonoid(3, SumMonoid(679)) }, Fingerprint { range: Range(425, 445), fp: EncodedCountingMonoid(3, SumMonoid(1294)) }, Fingerprint { range: Range(493, 548), fp: EncodedCountingMonoid(3, SumMonoid(1548)) }, Fingerprint { range: Range(548, 595), fp: EncodedCountingMonoid(3, SumMonoid(1679)) }, Fingerprint { range: Range(677, 682), fp: EncodedCountingMonoid(3, SumMonoid(2038)) }, Fingerprint { range: Range(682, 760), fp: EncodedCountingMonoid(3, SumMonoid(2159)) }, Fingerprint { range: Range(838, 867), fp: EncodedCountingMonoid(3, SumMonoid(2575)) }, Fingerprint { range: Range(867, 892), fp: EncodedCountingMonoid(3, SumMonoid(2621)) }, Fingerprint { range: Range(912, 939), fp: EncodedCountingMonoid(3, SumMonoid(2757)) }, Fingerprint { range: Range(939, 957), fp: EncodedCountingMonoid(3, SumMonoid(2838)) }], item_sets: [ItemSet { range: Range(4, 22), items: [], want_response: true }, ItemSet { range: Range(193, 195), items: [193, 194], want_response: true }, ItemSet { range: Range(263, 287), items: [263, 286], want_response: true }, ItemSet { range: Range(287, 328), items: [316, 326], want_response: true }, ItemSet { range: Range(328, 360), items: [328], want_response: true }, ItemSet { range: Range(360, 404), items: [384, 399], want_response: true }, ItemSet { range: Range(404, 425), items: [404, 410], want_response: true }, ItemSet { range: Range(445, 482), items: [445, 446], want_response: true }, ItemSet { range: Range(482, 493), items: [484], want_response: true }, ItemSet { range: Range(595, 666), items: [622, 647], want_response: true }, ItemSet { range: Range(666, 677), items: [666], want_response: true }, ItemSet { range: Range(760, 829), items: [802, 821], want_response: true }, ItemSet { range: Range(829, 838), items: [829], want_response: true }, ItemSet { range: Range(892, 912), items: [909], want_response: true }, ItemSet { range: Range(957, 999), items: [995], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(55, 109), fp: EncodedCountingMonoid(3, SumMonoid(250)) }, Fingerprint { range: Range(127, 153), fp: EncodedCountingMonoid(4, SumMonoid(550)) }, Fingerprint { range: Range(153, 193), fp: EncodedCountingMonoid(3, SumMonoid(508)) }, Fingerprint { range: Range(195, 260), fp: EncodedCountingMonoid(3, SumMonoid(680)) }], item_sets: [ItemSet { range: Range(4, 22), items: [4, 6, 7, 10, 12, 21], want_response: false }, ItemSet { range: Range(193, 195), items: [194], want_response: false }, ItemSet { range: Range(263, 287), items: [265, 281], want_response: false }, ItemSet { range: Range(287, 328), items: [287, 303, 313, 319, 325], want_response: false }, ItemSet { range: Range(328, 360), items: [329, 344, 346, 348, 359], want_response: false }, ItemSet { range: Range(360, 404), items: [360, 361, 364, 367, 376, 378, 386, 393, 402], want_response: false }, ItemSet { range: Range(404, 425), items: [408], want_response: false }, ItemSet { range: Range(445, 482), items: [469, 470], want_response: false }, ItemSet { range: Range(482, 493), items: [482, 483, 492], want_response: false }, ItemSet { range: Range(595, 666), items: [595, 611, 620, 634], want_response: false }, ItemSet { range: Range(666, 677), items: [], want_response: false }, ItemSet { range: Range(760, 829), items: [760, 770, 788, 805], want_response: false }, ItemSet { range: Range(829, 838), items: [831], want_response: false }, ItemSet { range: Range(892, 912), items: [892, 893, 908, 909], want_response: false }, ItemSet { range: Range(957, 999), items: [957, 964, 973, 982, 998], want_response: false }, ItemSet { range: Range(22, 55), items: [22], want_response: true }, ItemSet { range: Range(109, 127), items: [109, 124], want_response: true }, ItemSet { range: Range(260, 263), items: [260, 261], want_response: true }, ItemSet { range: Range(425, 445), items: [433, 442], want_response: true }, ItemSet { range: Range(493, 516), items: [500, 503], want_response: true }, ItemSet { range: Range(516, 548), items: [516], want_response: true }, ItemSet { range: Range(548, 595), items: [565], want_response: true }, ItemSet { range: Range(677, 682), items: [680], want_response: true }, ItemSet { range: Range(682, 697), items: [695, 696], want_response: true }, ItemSet { range: Range(697, 760), items: [697, 757], want_response: true }, ItemSet { range: Range(838, 861), items: [838, 856], want_response: true }, ItemSet { range: Range(861, 867), items: [861], want_response: true }, ItemSet { range: Range(867, 892), items: [879], want_response: true }, ItemSet { range: Range(912, 939), items: [912, 922], want_response: true }, ItemSet { range: Range(939, 947), items: [940, 945], want_response: true }, ItemSet { range: Range(947, 957), items: [947], want_response: true }], wants: [193, 263, 286, 316, 326, 328, 384, 399, 404, 410, 445, 446, 484, 622, 647, 666, 802, 821, 829, 995], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(22, 55), items: [39, 41, 43, 45, 52], want_response: false }, ItemSet { range: Range(109, 127), items: [117, 124], want_response: false }, ItemSet { range: Range(260, 263), items: [], want_response: false }, ItemSet { range: Range(425, 445), items: [425, 433, 436], want_response: false }, ItemSet { range: Range(493, 516), items: [493, 515], want_response: false }, ItemSet { range: Range(516, 548), items: [540], want_response: false }, ItemSet { range: Range(548, 595), items: [548, 559, 572], want_response: false }, ItemSet { range: Range(677, 682), items: [677, 680, 681], want_response: false }, ItemSet { range: Range(682, 697), items: [682], want_response: false }, ItemSet { range: Range(697, 760), items: [720, 757], want_response: false }, ItemSet { range: Range(838, 861), items: [852, 859], want_response: false }, ItemSet { range: Range(861, 867), items: [864], want_response: false }, ItemSet { range: Range(867, 892), items: [867, 874, 880], want_response: false }, ItemSet { range: Range(912, 939), items: [912, 921, 924], want_response: false }, ItemSet { range: Range(939, 947), items: [939], want_response: false }, ItemSet { range: Range(947, 957), items: [948, 951], want_response: false }, ItemSet { range: Range(55, 77), items: [55, 72], want_response: true }, ItemSet { range: Range(77, 109), items: [77], want_response: true }, ItemSet { range: Range(127, 145), items: [127, 133], want_response: true }, ItemSet { range: Range(145, 153), items: [145], want_response: true }, ItemSet { range: Range(153, 193), items: [], want_response: true }, ItemSet { range: Range(195, 248), items: [196, 235], want_response: true }, ItemSet { range: Range(248, 260), items: [248], want_response: true }], wants: [4, 6, 7, 10, 12, 21, 265, 281, 287, 303, 313, 319, 325, 329, 344, 346, 348, 359, 360, 361, 364, 367, 376, 378, 386, 393, 402, 408, 469, 470, 482, 483, 492, 595, 611, 620, 634, 760, 770, 788, 805, 831, 892, 893, 908, 957, 964, 973, 982, 998, 22, 109, 260, 261, 442, 500, 503, 516, 565, 695, 696, 697, 838, 856, 861, 879, 922, 940, 945, 947], provide: [(193, true), (263, true), (286, true), (316, true), (326, true), (328, true), (384, true), (399, true), (404, true), (410, true), (445, true), (446, true), (484, true), (622, true), (647, true), (666, true), (802, true), (821, true), (829, true), (995, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(55, 77), items: [64], want_response: false }, ItemSet { range: Range(77, 109), items: [90, 96], want_response: false }, ItemSet { range: Range(127, 145), items: [127, 139, 141, 143], want_response: false }, ItemSet { range: Range(145, 153), items: [], want_response: false }, ItemSet { range: Range(153, 193), items: [153, 168, 187], want_response: false }, ItemSet { range: Range(195, 248), items: [195, 230], want_response: false }, ItemSet { range: Range(248, 260), items: [255], want_response: false }], wants: [39, 41, 43, 45, 52, 117, 425, 436, 493, 515, 540, 548, 559, 572, 677, 681, 682, 720, 852, 859, 864, 867, 874, 880, 921, 924, 939, 948, 951, 55, 72, 77, 133, 145, 196, 235, 248], provide: [(4, true), (6, true), (7, true), (10, true), (12, true), (21, true), (265, true), (281, true), (287, true), (303, true), (313, true), (319, true), (325, true), (329, true), (344, true), (346, true), (348, true), (359, true), (360, true), (361, true), (364, true), (367, true), (376, true), (378, true), (386, true), (393, true), (402, true), (408, true), (469, true), (470, true), (482, true), (483, true), (492, true), (595, true), (611, true), (620, true), (634, true), (760, true), (770, true), (788, true), (805, true), (831, true), (892, true), (893, true), (908, true), (957, true), (964, true), (973, true), (982, true), (998, true), (22, true), (109, true), (260, true), (261, true), (442, true), (500, true), (503, true), (516, true), (565, true), (695, true), (696, true), (697, true), (838, true), (856, true), (861, true), (879, true), (922, true), (940, true), (945, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [64, 90, 96, 139, 141, 143, 153, 168, 187, 195, 230, 255], provide: [(39, true), (41, true), (43, true), (45, true), (52, true), (117, true), (425, true), (436, true), (493, true), (515, true), (540, true), (548, true), (559, true), (572, true), (677, true), (681, true), (682, true), (720, true), (852, true), (859, true), (864, true), (867, true), (874, true), (880, true), (921, true), (924, true), (939, true), (948, true), (951, true), (55, true), (72, true), (77, true), (133, true), (145, true), (196, true), (235, true), (248, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(64, true), (90, true), (96, true), (139, true), (141, true), (143, true), (153, true), (168, true), (187, true), (195, true), (230, true), (255, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 6, 7, 10, 12, 21, 22, 64, 90, 96, 109, 124, 127, 139, 141, 143, 153, 168, 187, 194, 195, 230, 255, 260, 261, 265, 281, 287, 303, 313, 319, 325, 329, 344, 346, 348, 359, 360, 361, 364, 367, 376, 378, 386, 393, 402, 408, 433, 442, 469, 470, 482, 483, 492, 500, 503, 516, 565, 595, 611, 620, 634, 680, 695, 696, 697, 757, 760, 770, 788, 805, 831, 838, 856, 861, 879, 892, 893, 908, 909, 912, 922, 940, 945, 947, 957, 964, 973, 982, 998} + [193, 263, 286, 316, 326, 328, 384, 399, 404, 410, 445, 446, 484, 622, 647, 666, 802, 821, 829, 995, 39, 41, 43, 45, 52, 117, 425, 436, 493, 515, 540, 548, 559, 572, 677, 681, 682, 720, 852, 859, 864, 867, 874, 880, 921, 924, 939, 948, 951, 55, 72, 77, 133, 145, 196, 235, 248]
[INFO] [stdout] b all: {39, 41, 43, 45, 52, 55, 72, 77, 117, 124, 127, 133, 145, 193, 194, 196, 235, 248, 263, 286, 316, 326, 328, 384, 399, 404, 410, 425, 433, 436, 445, 446, 484, 493, 515, 540, 548, 559, 572, 622, 647, 666, 677, 680, 681, 682, 720, 757, 802, 821, 829, 852, 859, 864, 867, 874, 880, 909, 912, 921, 924, 939, 948, 951, 995} + [4, 6, 7, 10, 12, 21, 265, 281, 287, 303, 313, 319, 325, 329, 344, 346, 348, 359, 360, 361, 364, 367, 376, 378, 386, 393, 402, 408, 469, 470, 482, 483, 492, 595, 611, 620, 634, 760, 770, 788, 805, 831, 892, 893, 908, 957, 964, 973, 982, 998, 22, 109, 260, 261, 442, 500, 503, 516, 565, 695, 696, 697, 838, 856, 861, 879, 922, 940, 945, 947, 64, 90, 96, 139, 141, 143, 153, 168, 187, 195, 230, 255]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 6, 7, 10, 12, 21, 22, 39, 41, 43, 45, 52, 55, 64, 72, 77, 90, 96, 109, 117, 124, 127, 133, 139, 141, 143, 145, 153, 168, 187, 193, 194, 195, 196, 230, 235, 248, 255, 260, 261, 263, 265, 281, 286, 287, 303, 313, 316, 319, 325, 326, 328, 329, 344, 346, 348, 359, 360, 361, 364, 367, 376, 378, 384, 386, 393, 399, 402, 404, 408, 410, 425, 433, 436, 442, 445, 446, 469, 470, 482, 483, 484, 492, 493, 500, 503, 515, 516, 540, 548, 559, 565, 572, 595, 611, 620, 622, 634, 647, 666, 677, 680, 681, 682, 695, 696, 697, 720, 757, 760, 770, 788, 802, 805, 821, 829, 831, 838, 852, 856, 859, 861, 864, 867, 874, 879, 880, 892, 893, 908, 909, 912, 921, 922, 924, 939, 940, 945, 947, 948, 951, 957, 964, 973, 982, 995, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 6, 7, 10, 12, 21, 22, 39, 41, 43, 45, 52, 55, 64, 72, 77, 90, 96, 109, 117, 124, 127, 133, 139, 141, 143, 145, 153, 168, 187, 193, 194, 195, 196, 230, 235, 248, 255, 260, 261, 263, 265, 281, 286, 287, 303, 313, 316, 319, 325, 326, 328, 329, 344, 346, 348, 359, 360, 361, 364, 367, 376, 378, 384, 386, 393, 399, 402, 404, 408, 410, 425, 433, 436, 442, 445, 446, 469, 470, 482, 483, 484, 492, 493, 500, 503, 515, 516, 540, 548, 559, 565, 572, 595, 611, 620, 622, 634, 647, 666, 677, 680, 681, 682, 695, 696, 697, 720, 757, 760, 770, 788, 802, 805, 821, 829, 831, 838, 852, 856, 859, 861, 864, 867, 874, 879, 880, 892, 893, 908, 909, 912, 921, 922, 924, 939, 940, 945, 947, 948, 951, 957, 964, 973, 982, 995, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 6, 7, 10, 12, 21, 22, 39, 41, 43, 45, 52, 55, 64, 72, 77, 90, 96, 109, 117, 124, 127, 133, 139, 141, 143, 145, 153, 168, 187, 193, 194, 195, 196, 230, 235, 248, 255, 260, 261, 263, 265, 281, 286, 287, 303, 313, 316, 319, 325, 326, 328, 329, 344, 346, 348, 359, 360, 361, 364, 367, 376, 378, 384, 386, 393, 399, 402, 404, 408, 410, 425, 433, 436, 442, 445, 446, 469, 470, 482, 483, 484, 492, 493, 500, 503, 515, 516, 540, 548, 559, 565, 572, 595, 611, 620, 622, 634, 647, 666, 677, 680, 681, 682, 695, 696, 697, 720, 757, 760, 770, 788, 802, 805, 821, 829, 831, 838, 852, 856, 859, 861, 864, 867, 874, 879, 880, 892, 893, 908, 909, 912, 921, 922, 924, 939, 940, 945, 947, 948, 951, 957, 964, 973, 982, 995, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 11, 48, 77, 86, 139, 146, 182, 189, 191, 238, 267, 283, 306, 323, 331, 352, 372, 389, 407, 418, 450, 477, 526, 528, 540, 541, 559, 573, 592, 595, 605, 636, 645, 651, 690, 747, 775, 796, 858, 874, 895, 898, 907, 913, 968, 970, 980}
[INFO] [stdout] b items: {6, 14, 26, 27, 33, 65, 95, 110, 139, 151, 196, 212, 220, 252, 254, 273, 274, 313, 317, 318, 329, 330, 350, 354, 368, 373, 374, 386, 397, 410, 436, 439, 440, 451, 465, 490, 496, 505, 540, 554, 581, 596, 630, 639, 644, 650, 670, 673, 705, 712, 721, 725, 728, 732, 734, 775, 802, 807, 828, 846, 849, 863, 866, 876, 902, 905, 935, 937, 962, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 981), fp: EncodedCountingMonoid(48, SumMonoid(23946)) }], item_sets: [ItemSet { range: Range(981, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 490), fp: EncodedCountingMonoid(35, SumMonoid(9197)) }, Fingerprint { range: Range(490, 981), fp: EncodedCountingMonoid(34, SumMonoid(24878)) }], item_sets: [ItemSet { range: Range(981, 2), items: [997], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 283), fp: EncodedCountingMonoid(12, SumMonoid(1576)) }, Fingerprint { range: Range(283, 490), fp: EncodedCountingMonoid(11, SumMonoid(4108)) }, Fingerprint { range: Range(490, 747), fp: EncodedCountingMonoid(13, SumMonoid(7681)) }, Fingerprint { range: Range(747, 981), fp: EncodedCountingMonoid(12, SumMonoid(10581)) }], item_sets: [], wants: [997], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 151), fp: EncodedCountingMonoid(9, SumMonoid(515)) }, Fingerprint { range: Range(151, 283), fp: EncodedCountingMonoid(8, SumMonoid(1832)) }, Fingerprint { range: Range(283, 374), fp: EncodedCountingMonoid(9, SumMonoid(3052)) }, Fingerprint { range: Range(374, 490), fp: EncodedCountingMonoid(9, SumMonoid(3798)) }, Fingerprint { range: Range(490, 650), fp: EncodedCountingMonoid(10, SumMonoid(5675)) }, Fingerprint { range: Range(650, 747), fp: EncodedCountingMonoid(10, SumMonoid(7050)) }, Fingerprint { range: Range(747, 866), fp: EncodedCountingMonoid(7, SumMonoid(5770)) }, Fingerprint { range: Range(866, 981), fp: EncodedCountingMonoid(7, SumMonoid(6383)) }], item_sets: [], wants: [], provide: [(997, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 86), fp: EncodedCountingMonoid(4, SumMonoid(138)) }, Fingerprint { range: Range(86, 151), fp: EncodedCountingMonoid(3, SumMonoid(371)) }, Fingerprint { range: Range(151, 238), fp: EncodedCountingMonoid(3, SumMonoid(562)) }, Fingerprint { range: Range(283, 331), fp: EncodedCountingMonoid(3, SumMonoid(912)) }, Fingerprint { range: Range(331, 374), fp: EncodedCountingMonoid(3, SumMonoid(1055)) }, Fingerprint { range: Range(374, 450), fp: EncodedCountingMonoid(3, SumMonoid(1214)) }, Fingerprint { range: Range(490, 592), fp: EncodedCountingMonoid(6, SumMonoid(3267)) }, Fingerprint { range: Range(592, 650), fp: EncodedCountingMonoid(5, SumMonoid(3073)) }, Fingerprint { range: Range(866, 913), fp: EncodedCountingMonoid(4, SumMonoid(3574)) }, Fingerprint { range: Range(913, 981), fp: EncodedCountingMonoid(4, SumMonoid(3831)) }], item_sets: [ItemSet { range: Range(238, 283), items: [238, 267], want_response: true }, ItemSet { range: Range(450, 490), items: [450, 477], want_response: true }, ItemSet { range: Range(650, 747), items: [651, 690], want_response: true }, ItemSet { range: Range(747, 796), items: [747, 775], want_response: true }, ItemSet { range: Range(796, 866), items: [796, 858], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 27), fp: EncodedCountingMonoid(3, SumMonoid(46)) }, Fingerprint { range: Range(27, 86), fp: EncodedCountingMonoid(3, SumMonoid(125)) }, Fingerprint { range: Range(283, 329), fp: EncodedCountingMonoid(3, SumMonoid(948)) }, Fingerprint { range: Range(374, 436), fp: EncodedCountingMonoid(4, SumMonoid(1567)) }, Fingerprint { range: Range(436, 450), fp: EncodedCountingMonoid(3, SumMonoid(1315)) }, Fingerprint { range: Range(490, 540), fp: EncodedCountingMonoid(3, SumMonoid(1491)) }, Fingerprint { range: Range(540, 592), fp: EncodedCountingMonoid(3, SumMonoid(1675)) }], item_sets: [ItemSet { range: Range(238, 283), items: [252, 254, 273, 274], want_response: false }, ItemSet { range: Range(450, 490), items: [451, 465], want_response: false }, ItemSet { range: Range(650, 747), items: [650, 670, 673, 705, 712, 721, 725, 728, 732, 734], want_response: false }, ItemSet { range: Range(747, 796), items: [775], want_response: false }, ItemSet { range: Range(796, 866), items: [802, 807, 828, 846, 849, 863], want_response: false }, ItemSet { range: Range(86, 139), items: [95, 110], want_response: true }, ItemSet { range: Range(139, 151), items: [139], want_response: true }, ItemSet { range: Range(151, 212), items: [151, 196], want_response: true }, ItemSet { range: Range(212, 238), items: [212, 220], want_response: true }, ItemSet { range: Range(329, 331), items: [329, 330], want_response: true }, ItemSet { range: Range(331, 368), items: [350, 354], want_response: true }, ItemSet { range: Range(368, 374), items: [368, 373], want_response: true }, ItemSet { range: Range(592, 639), items: [596, 630], want_response: true }, ItemSet { range: Range(639, 650), items: [639, 644], want_response: true }, ItemSet { range: Range(866, 902), items: [866, 876], want_response: true }, ItemSet { range: Range(902, 913), items: [902, 905], want_response: true }, ItemSet { range: Range(913, 962), items: [935, 937], want_response: true }, ItemSet { range: Range(962, 981), items: [962], want_response: true }], wants: [238, 267, 450, 477, 651, 690, 747, 796, 858], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(86, 139), items: [86], want_response: false }, ItemSet { range: Range(139, 151), items: [139, 146], want_response: false }, ItemSet { range: Range(151, 212), items: [182, 189, 191], want_response: false }, ItemSet { range: Range(212, 238), items: [], want_response: false }, ItemSet { range: Range(329, 331), items: [], want_response: false }, ItemSet { range: Range(331, 368), items: [331, 352], want_response: false }, ItemSet { range: Range(368, 374), items: [372], want_response: false }, ItemSet { range: Range(592, 639), items: [592, 595, 605, 636], want_response: false }, ItemSet { range: Range(639, 650), items: [645], want_response: false }, ItemSet { range: Range(866, 902), items: [874, 895, 898], want_response: false }, ItemSet { range: Range(902, 913), items: [907], want_response: false }, ItemSet { range: Range(913, 962), items: [913], want_response: false }, ItemSet { range: Range(962, 981), items: [968, 970, 980], want_response: false }, ItemSet { range: Range(2, 27), items: [2, 11], want_response: true }, ItemSet { range: Range(27, 86), items: [48, 77], want_response: true }, ItemSet { range: Range(283, 323), items: [283, 306], want_response: true }, ItemSet { range: Range(323, 329), items: [323], want_response: true }, ItemSet { range: Range(374, 418), items: [389, 407], want_response: true }, ItemSet { range: Range(418, 436), items: [418], want_response: true }, ItemSet { range: Range(436, 450), items: [], want_response: true }, ItemSet { range: Range(490, 540), items: [526, 528], want_response: true }, ItemSet { range: Range(540, 559), items: [540, 541], want_response: true }, ItemSet { range: Range(559, 592), items: [559, 573], want_response: true }], wants: [252, 254, 273, 274, 451, 465, 650, 670, 673, 705, 712, 721, 725, 728, 732, 734, 802, 807, 828, 846, 849, 863, 95, 110, 151, 196, 212, 220, 329, 330, 350, 354, 368, 373, 596, 630, 639, 644, 866, 876, 902, 905, 935, 937, 962], provide: [(238, true), (267, true), (450, true), (477, true), (651, true), (690, true), (747, true), (796, true), (858, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(2, 27), items: [6, 14, 26], want_response: false }, ItemSet { range: Range(27, 86), items: [27, 33, 65], want_response: false }, ItemSet { range: Range(283, 323), items: [313, 317, 318], want_response: false }, ItemSet { range: Range(323, 329), items: [], want_response: false }, ItemSet { range: Range(374, 418), items: [374, 386, 397, 410], want_response: false }, ItemSet { range: Range(418, 436), items: [], want_response: false }, ItemSet { range: Range(436, 450), items: [436, 439, 440], want_response: false }, ItemSet { range: Range(490, 540), items: [490, 496, 505], want_response: false }, ItemSet { range: Range(540, 559), items: [540, 554], want_response: false }, ItemSet { range: Range(559, 592), items: [581], want_response: false }], wants: [86, 146, 182, 189, 191, 331, 352, 372, 592, 595, 605, 636, 645, 874, 895, 898, 907, 913, 968, 970, 980, 2, 11, 48, 77, 283, 306, 323, 389, 407, 418, 526, 528, 541, 559, 573], provide: [(252, true), (254, true), (273, true), (274, true), (451, true), (465, true), (650, true), (670, true), (673, true), (705, true), (712, true), (721, true), (725, true), (728, true), (732, true), (734, true), (802, true), (807, true), (828, true), (846, true), (849, true), (863, true), (95, true), (110, true), (151, true), (196, true), (212, true), (220, true), (329, true), (330, true), (350, true), (354, true), (368, true), (373, true), (596, true), (630, true), (639, true), (644, true), (866, true), (876, true), (902, true), (905, true), (935, true), (937, true), (962, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [6, 14, 26, 27, 33, 65, 313, 317, 318, 374, 386, 397, 410, 436, 439, 440, 490, 496, 505, 554, 581], provide: [(86, true), (146, true), (182, true), (189, true), (191, true), (331, true), (352, true), (372, true), (592, true), (595, true), (605, true), (636, true), (645, true), (874, true), (895, true), (898, true), (907, true), (913, true), (968, true), (970, true), (980, true), (2, true), (11, true), (48, true), (77, true), (283, true), (306, true), (323, true), (389, true), (407, true), (418, true), (526, true), (528, true), (541, true), (559, true), (573, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(6, true), (14, true), (26, true), (27, true), (33, true), (65, true), (313, true), (317, true), (318, true), (374, true), (386, true), (397, true), (410, true), (436, true), (439, true), (440, true), (490, true), (496, true), (505, true), (554, true), (581, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 11, 48, 77, 86, 139, 146, 182, 189, 191, 238, 267, 283, 306, 323, 331, 352, 372, 389, 407, 418, 450, 477, 526, 528, 540, 541, 559, 573, 592, 595, 605, 636, 645, 651, 690, 747, 775, 796, 858, 874, 895, 898, 907, 913, 968, 970, 980} + [997, 252, 254, 273, 274, 451, 465, 650, 670, 673, 705, 712, 721, 725, 728, 732, 734, 802, 807, 828, 846, 849, 863, 95, 110, 151, 196, 212, 220, 329, 330, 350, 354, 368, 373, 596, 630, 639, 644, 866, 876, 902, 905, 935, 937, 962, 6, 14, 26, 27, 33, 65, 313, 317, 318, 374, 386, 397, 410, 436, 439, 440, 490, 496, 505, 554, 581]
[INFO] [stdout] b all: {6, 14, 26, 27, 33, 65, 95, 110, 139, 151, 196, 212, 220, 252, 254, 273, 274, 313, 317, 318, 329, 330, 350, 354, 368, 373, 374, 386, 397, 410, 436, 439, 440, 451, 465, 490, 496, 505, 540, 554, 581, 596, 630, 639, 644, 650, 670, 673, 705, 712, 721, 725, 728, 732, 734, 775, 802, 807, 828, 846, 849, 863, 866, 876, 902, 905, 935, 937, 962, 997} + [238, 267, 450, 477, 651, 690, 747, 796, 858, 86, 146, 182, 189, 191, 331, 352, 372, 592, 595, 605, 636, 645, 874, 895, 898, 907, 913, 968, 970, 980, 2, 11, 48, 77, 283, 306, 323, 389, 407, 418, 526, 528, 541, 559, 573]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 6, 11, 14, 26, 27, 33, 48, 65, 77, 86, 95, 110, 139, 146, 151, 182, 189, 191, 196, 212, 220, 238, 252, 254, 267, 273, 274, 283, 306, 313, 317, 318, 323, 329, 330, 331, 350, 352, 354, 368, 372, 373, 374, 386, 389, 397, 407, 410, 418, 436, 439, 440, 450, 451, 465, 477, 490, 496, 505, 526, 528, 540, 541, 554, 559, 573, 581, 592, 595, 596, 605, 630, 636, 639, 644, 645, 650, 651, 670, 673, 690, 705, 712, 721, 725, 728, 732, 734, 747, 775, 796, 802, 807, 828, 846, 849, 858, 863, 866, 874, 876, 895, 898, 902, 905, 907, 913, 935, 937, 962, 968, 970, 980, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 6, 11, 14, 26, 27, 33, 48, 65, 77, 86, 95, 110, 139, 146, 151, 182, 189, 191, 196, 212, 220, 238, 252, 254, 267, 273, 274, 283, 306, 313, 317, 318, 323, 329, 330, 331, 350, 352, 354, 368, 372, 373, 374, 386, 389, 397, 407, 410, 418, 436, 439, 440, 450, 451, 465, 477, 490, 496, 505, 526, 528, 540, 541, 554, 559, 573, 581, 592, 595, 596, 605, 630, 636, 639, 644, 645, 650, 651, 670, 673, 690, 705, 712, 721, 725, 728, 732, 734, 747, 775, 796, 802, 807, 828, 846, 849, 858, 863, 866, 874, 876, 895, 898, 902, 905, 907, 913, 935, 937, 962, 968, 970, 980, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 6, 11, 14, 26, 27, 33, 48, 65, 77, 86, 95, 110, 139, 146, 151, 182, 189, 191, 196, 212, 220, 238, 252, 254, 267, 273, 274, 283, 306, 313, 317, 318, 323, 329, 330, 331, 350, 352, 354, 368, 372, 373, 374, 386, 389, 397, 407, 410, 418, 436, 439, 440, 450, 451, 465, 477, 490, 496, 505, 526, 528, 540, 541, 554, 559, 573, 581, 592, 595, 596, 605, 630, 636, 639, 644, 645, 650, 651, 670, 673, 690, 705, 712, 721, 725, 728, 732, 734, 747, 775, 796, 802, 807, 828, 846, 849, 858, 863, 866, 874, 876, 895, 898, 902, 905, 907, 913, 935, 937, 962, 968, 970, 980, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 19, 27, 34, 40, 41, 46, 54, 66, 74, 82, 93, 103, 104, 119, 123, 138, 158, 161, 184, 186, 191, 205, 219, 220, 221, 229, 233, 236, 254, 267, 270, 271, 275, 305, 312, 317, 318, 329, 330, 332, 363, 364, 383, 385, 389, 402, 432, 442, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605, 632, 661, 662, 680, 688, 699, 700, 701, 704, 720, 725, 753, 757, 764, 771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 984}
[INFO] [stdout] b items: {63, 66, 132, 208, 275, 348, 420, 447, 616, 632, 637, 691, 710, 764, 956}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 985), fp: EncodedCountingMonoid(88, SumMonoid(38343)) }], item_sets: [ItemSet { range: Range(985, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 616), fp: EncodedCountingMonoid(8, SumMonoid(1959)) }, Fingerprint { range: Range(616, 985), fp: EncodedCountingMonoid(7, SumMonoid(5006)) }], item_sets: [ItemSet { range: Range(985, 6), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 267), fp: EncodedCountingMonoid(30, SumMonoid(3866)) }, Fingerprint { range: Range(267, 616), fp: EncodedCountingMonoid(30, SumMonoid(12316)) }, Fingerprint { range: Range(616, 771), fp: EncodedCountingMonoid(14, SumMonoid(9846)) }, Fingerprint { range: Range(771, 985), fp: EncodedCountingMonoid(14, SumMonoid(12315)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(616, 691), fp: EncodedCountingMonoid(3, SumMonoid(1885)) }, Fingerprint { range: Range(691, 771), fp: EncodedCountingMonoid(3, SumMonoid(2165)) }], item_sets: [ItemSet { range: Range(6, 132), items: [63, 66], want_response: true }, ItemSet { range: Range(132, 267), items: [132, 208], want_response: true }, ItemSet { range: Range(267, 420), items: [275, 348], want_response: true }, ItemSet { range: Range(420, 616), items: [420, 447], want_response: true }, ItemSet { range: Range(771, 985), items: [956], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(616, 680), fp: EncodedCountingMonoid(3, SumMonoid(1955)) }, Fingerprint { range: Range(691, 725), fp: EncodedCountingMonoid(5, SumMonoid(3524)) }, Fingerprint { range: Range(725, 771), fp: EncodedCountingMonoid(4, SumMonoid(2999)) }], item_sets: [ItemSet { range: Range(6, 132), items: [6, 19, 27, 34, 40, 41, 46, 54, 66, 74, 82, 93, 103, 104, 119, 123], want_response: false }, ItemSet { range: Range(132, 267), items: [138, 158, 161, 184, 186, 191, 205, 219, 220, 221, 229, 233, 236, 254], want_response: false }, ItemSet { range: Range(267, 420), items: [267, 270, 271, 275, 305, 312, 317, 318, 329, 330, 332, 363, 364, 383, 385, 389, 402], want_response: false }, ItemSet { range: Range(420, 616), items: [432, 442, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605], want_response: false }, ItemSet { range: Range(771, 985), items: [771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 984], want_response: false }, ItemSet { range: Range(680, 691), items: [680, 688], want_response: true }], wants: [63, 132, 208, 348, 420, 447, 956], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(680, 691), items: [], want_response: false }, ItemSet { range: Range(616, 637), items: [616, 632], want_response: true }, ItemSet { range: Range(637, 680), items: [637], want_response: true }, ItemSet { range: Range(691, 725), items: [691, 710], want_response: true }, ItemSet { range: Range(725, 771), items: [764], want_response: true }], wants: [6, 19, 27, 34, 40, 41, 46, 54, 74, 82, 93, 103, 104, 119, 123, 138, 158, 161, 184, 186, 191, 205, 219, 220, 221, 229, 233, 236, 254, 267, 270, 271, 305, 312, 317, 318, 329, 330, 332, 363, 364, 383, 385, 389, 402, 432, 442, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605, 771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 984, 680, 688], provide: [(63, true), (132, true), (208, true), (348, true), (420, true), (447, true), (956, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(616, 637), items: [632], want_response: false }, ItemSet { range: Range(637, 680), items: [661, 662], want_response: false }, ItemSet { range: Range(691, 725), items: [699, 700, 701, 704, 720], want_response: false }, ItemSet { range: Range(725, 771), items: [725, 753, 757, 764], want_response: false }], wants: [616, 637, 691, 710], provide: [(6, true), (19, true), (27, true), (34, true), (40, true), (41, true), (46, true), (54, true), (74, true), (82, true), (93, true), (103, true), (104, true), (119, true), (123, true), (138, true), (158, true), (161, true), (184, true), (186, true), (191, true), (205, true), (219, true), (220, true), (221, true), (229, true), (233, true), (236, true), (254, true), (267, true), (270, true), (271, true), (305, true), (312, true), (317, true), (318, true), (329, true), (330, true), (332, true), (363, true), (364, true), (383, true), (385, true), (389, true), (402, true), (432, true), (442, true), (454, true), (460, true), (484, true), (494, true), (496, true), (520, true), (530, true), (590, true), (597, true), (600, true), (605, true), (771, true), (797, true), (806, true), (837, true), (876, true), (880, true), (888, true), (896, true), (897, true), (899, true), (902, true), (929, true), (953, true), (984, true), (680, true), (688, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [661, 662, 699, 700, 701, 704, 720, 725, 753, 757], provide: [(616, true), (637, true), (691, true), (710, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(661, true), (662, true), (699, true), (700, true), (701, true), (704, true), (720, true), (725, true), (753, true), (757, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 19, 27, 34, 40, 41, 46, 54, 66, 74, 82, 93, 103, 104, 119, 123, 138, 158, 161, 184, 186, 191, 205, 219, 220, 221, 229, 233, 236, 254, 267, 270, 271, 275, 305, 312, 317, 318, 329, 330, 332, 363, 364, 383, 385, 389, 402, 432, 442, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605, 632, 661, 662, 680, 688, 699, 700, 701, 704, 720, 725, 753, 757, 764, 771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 984} + [63, 132, 208, 348, 420, 447, 956, 616, 637, 691, 710]
[INFO] [stdout] b all: {63, 66, 132, 208, 275, 348, 420, 447, 616, 632, 637, 691, 710, 764, 956} + [6, 19, 27, 34, 40, 41, 46, 54, 74, 82, 93, 103, 104, 119, 123, 138, 158, 161, 184, 186, 191, 205, 219, 220, 221, 229, 233, 236, 254, 267, 270, 271, 305, 312, 317, 318, 329, 330, 332, 363, 364, 383, 385, 389, 402, 432, 442, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605, 771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 984, 680, 688, 661, 662, 699, 700, 701, 704, 720, 725, 753, 757]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 19, 27, 34, 40, 41, 46, 54, 63, 66, 74, 82, 93, 103, 104, 119, 123, 132, 138, 158, 161, 184, 186, 191, 205, 208, 219, 220, 221, 229, 233, 236, 254, 267, 270, 271, 275, 305, 312, 317, 318, 329, 330, 332, 348, 363, 364, 383, 385, 389, 402, 420, 432, 442, 447, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605, 616, 632, 637, 661, 662, 680, 688, 691, 699, 700, 701, 704, 710, 720, 725, 753, 757, 764, 771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 956, 984]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 19, 27, 34, 40, 41, 46, 54, 63, 66, 74, 82, 93, 103, 104, 119, 123, 132, 138, 158, 161, 184, 186, 191, 205, 208, 219, 220, 221, 229, 233, 236, 254, 267, 270, 271, 275, 305, 312, 317, 318, 329, 330, 332, 348, 363, 364, 383, 385, 389, 402, 420, 432, 442, 447, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605, 616, 632, 637, 661, 662, 680, 688, 691, 699, 700, 701, 704, 710, 720, 725, 753, 757, 764, 771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 956, 984], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 19, 27, 34, 40, 41, 46, 54, 63, 66, 74, 82, 93, 103, 104, 119, 123, 132, 138, 158, 161, 184, 186, 191, 205, 208, 219, 220, 221, 229, 233, 236, 254, 267, 270, 271, 275, 305, 312, 317, 318, 329, 330, 332, 348, 363, 364, 383, 385, 389, 402, 420, 432, 442, 447, 454, 460, 484, 494, 496, 520, 530, 590, 597, 600, 605, 616, 632, 637, 661, 662, 680, 688, 691, 699, 700, 701, 704, 710, 720, 725, 753, 757, 764, 771, 797, 806, 837, 876, 880, 888, 896, 897, 899, 902, 929, 953, 956, 984], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 24, 26, 59, 66, 76, 80, 162, 171, 192, 196, 241, 251, 261, 272, 274, 284, 330, 342, 355, 364, 375, 429, 431, 446, 475, 489, 492, 502, 520, 534, 558, 559, 574, 582, 605, 625, 631, 648, 664, 665, 670, 673, 677, 682, 683, 684, 715, 728, 739, 740, 742, 772, 781, 783, 853, 866, 886, 890, 895, 914, 935, 942, 949, 961, 964, 979, 986}
[INFO] [stdout] b items: {60, 67, 101, 107, 134, 158, 163, 205, 208, 241, 245, 247, 254, 271, 292, 303, 346, 353, 372, 397, 430, 438, 459, 480, 488, 515, 528, 532, 537, 551, 552, 593, 613, 615, 621, 635, 667, 678, 700, 709, 718, 724, 734, 788, 791, 793, 814, 828, 877, 906, 937, 938, 943, 950, 984}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 987), fp: EncodedCountingMonoid(68, SumMonoid(36928)) }], item_sets: [ItemSet { range: Range(987, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 537), fp: EncodedCountingMonoid(28, SumMonoid(8394)) }, Fingerprint { range: Range(537, 987), fp: EncodedCountingMonoid(27, SumMonoid(20196)) }], item_sets: [ItemSet { range: Range(987, 9), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 284), fp: EncodedCountingMonoid(16, SumMonoid(2360)) }, Fingerprint { range: Range(284, 537), fp: EncodedCountingMonoid(15, SumMonoid(6368)) }, Fingerprint { range: Range(537, 740), fp: EncodedCountingMonoid(19, SumMonoid(12362)) }, Fingerprint { range: Range(740, 987), fp: EncodedCountingMonoid(18, SumMonoid(15838)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 205), fp: EncodedCountingMonoid(7, SumMonoid(790)) }, Fingerprint { range: Range(205, 284), fp: EncodedCountingMonoid(7, SumMonoid(1671)) }, Fingerprint { range: Range(284, 438), fp: EncodedCountingMonoid(7, SumMonoid(2493)) }, Fingerprint { range: Range(438, 537), fp: EncodedCountingMonoid(7, SumMonoid(3440)) }, Fingerprint { range: Range(537, 667), fp: EncodedCountingMonoid(8, SumMonoid(4717)) }, Fingerprint { range: Range(667, 740), fp: EncodedCountingMonoid(7, SumMonoid(4930)) }, Fingerprint { range: Range(740, 906), fp: EncodedCountingMonoid(6, SumMonoid(4891)) }, Fingerprint { range: Range(906, 987), fp: EncodedCountingMonoid(6, SumMonoid(5658)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 80), fp: EncodedCountingMonoid(6, SumMonoid(260)) }, Fingerprint { range: Range(80, 205), fp: EncodedCountingMonoid(5, SumMonoid(801)) }, Fingerprint { range: Range(205, 272), fp: EncodedCountingMonoid(3, SumMonoid(753)) }, Fingerprint { range: Range(284, 364), fp: EncodedCountingMonoid(4, SumMonoid(1311)) }, Fingerprint { range: Range(364, 438), fp: EncodedCountingMonoid(4, SumMonoid(1599)) }, Fingerprint { range: Range(438, 502), fp: EncodedCountingMonoid(4, SumMonoid(1902)) }, Fingerprint { range: Range(502, 537), fp: EncodedCountingMonoid(3, SumMonoid(1556)) }, Fingerprint { range: Range(537, 625), fp: EncodedCountingMonoid(5, SumMonoid(2878)) }, Fingerprint { range: Range(625, 667), fp: EncodedCountingMonoid(5, SumMonoid(3233)) }, Fingerprint { range: Range(667, 684), fp: EncodedCountingMonoid(5, SumMonoid(3385)) }, Fingerprint { range: Range(684, 740), fp: EncodedCountingMonoid(4, SumMonoid(2866)) }, Fingerprint { range: Range(740, 853), fp: EncodedCountingMonoid(5, SumMonoid(3818)) }, Fingerprint { range: Range(853, 906), fp: EncodedCountingMonoid(5, SumMonoid(4390)) }, Fingerprint { range: Range(906, 961), fp: EncodedCountingMonoid(4, SumMonoid(3740)) }, Fingerprint { range: Range(961, 987), fp: EncodedCountingMonoid(4, SumMonoid(3890)) }], item_sets: [ItemSet { range: Range(272, 284), items: [272, 274], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 158), fp: EncodedCountingMonoid(3, SumMonoid(342)) }, Fingerprint { range: Range(205, 247), fp: EncodedCountingMonoid(4, SumMonoid(899)) }, Fingerprint { range: Range(247, 272), fp: EncodedCountingMonoid(3, SumMonoid(772)) }, Fingerprint { range: Range(537, 613), fp: EncodedCountingMonoid(4, SumMonoid(2233)) }, Fingerprint { range: Range(613, 625), fp: EncodedCountingMonoid(3, SumMonoid(1849)) }, Fingerprint { range: Range(684, 724), fp: EncodedCountingMonoid(3, SumMonoid(2127)) }, Fingerprint { range: Range(740, 814), fp: EncodedCountingMonoid(3, SumMonoid(2372)) }, Fingerprint { range: Range(906, 943), fp: EncodedCountingMonoid(3, SumMonoid(2781)) }], item_sets: [ItemSet { range: Range(272, 284), items: [], want_response: false }, ItemSet { range: Range(9, 80), items: [60, 67], want_response: true }, ItemSet { range: Range(158, 205), items: [158, 163], want_response: true }, ItemSet { range: Range(284, 346), items: [292, 303], want_response: true }, ItemSet { range: Range(346, 364), items: [346, 353], want_response: true }, ItemSet { range: Range(364, 430), items: [372, 397], want_response: true }, ItemSet { range: Range(430, 438), items: [430], want_response: true }, ItemSet { range: Range(438, 480), items: [438, 459], want_response: true }, ItemSet { range: Range(480, 502), items: [480, 488], want_response: true }, ItemSet { range: Range(502, 532), items: [515, 528], want_response: true }, ItemSet { range: Range(532, 537), items: [532], want_response: true }, ItemSet { range: Range(625, 667), items: [635], want_response: true }, ItemSet { range: Range(667, 684), items: [667, 678], want_response: true }, ItemSet { range: Range(724, 740), items: [724, 734], want_response: true }, ItemSet { range: Range(814, 853), items: [814, 828], want_response: true }, ItemSet { range: Range(853, 906), items: [877], want_response: true }, ItemSet { range: Range(943, 961), items: [943, 950], want_response: true }, ItemSet { range: Range(961, 987), items: [984], want_response: true }], wants: [272, 274], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(537, 582), fp: EncodedCountingMonoid(3, SumMonoid(1691)) }, Fingerprint { range: Range(740, 781), fp: EncodedCountingMonoid(3, SumMonoid(2254)) }], item_sets: [ItemSet { range: Range(9, 80), items: [9, 24, 26, 59, 66, 76], want_response: false }, ItemSet { range: Range(158, 205), items: [162, 171, 192, 196], want_response: false }, ItemSet { range: Range(284, 346), items: [284, 330, 342], want_response: false }, ItemSet { range: Range(346, 364), items: [355], want_response: false }, ItemSet { range: Range(364, 430), items: [364, 375, 429], want_response: false }, ItemSet { range: Range(430, 438), items: [431], want_response: false }, ItemSet { range: Range(438, 480), items: [446, 475], want_response: false }, ItemSet { range: Range(480, 502), items: [489, 492], want_response: false }, ItemSet { range: Range(502, 532), items: [502, 520], want_response: false }, ItemSet { range: Range(532, 537), items: [534], want_response: false }, ItemSet { range: Range(625, 667), items: [625, 631, 648, 664, 665], want_response: false }, ItemSet { range: Range(667, 684), items: [670, 673, 677, 682, 683], want_response: false }, ItemSet { range: Range(724, 740), items: [728, 739], want_response: false }, ItemSet { range: Range(814, 853), items: [], want_response: false }, ItemSet { range: Range(853, 906), items: [853, 866, 886, 890, 895], want_response: false }, ItemSet { range: Range(943, 961), items: [949], want_response: false }, ItemSet { range: Range(961, 987), items: [961, 964, 979, 986], want_response: false }, ItemSet { range: Range(80, 158), items: [80], want_response: true }, ItemSet { range: Range(205, 247), items: [241], want_response: true }, ItemSet { range: Range(247, 272), items: [251, 261], want_response: true }, ItemSet { range: Range(582, 613), items: [582, 605], want_response: true }, ItemSet { range: Range(613, 625), items: [], want_response: true }, ItemSet { range: Range(684, 724), items: [684, 715], want_response: true }, ItemSet { range: Range(781, 814), items: [781, 783], want_response: true }, ItemSet { range: Range(906, 942), items: [914, 935], want_response: true }, ItemSet { range: Range(942, 943), items: [942], want_response: true }], wants: [60, 67, 158, 163, 292, 303, 346, 353, 372, 397, 430, 438, 459, 480, 488, 515, 528, 532, 635, 667, 678, 724, 734, 814, 828, 877, 943, 950, 984], provide: [(272, true), (274, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(80, 158), items: [101, 107, 134], want_response: false }, ItemSet { range: Range(205, 247), items: [205, 208, 241, 245], want_response: false }, ItemSet { range: Range(247, 272), items: [247, 254, 271], want_response: false }, ItemSet { range: Range(582, 613), items: [593], want_response: false }, ItemSet { range: Range(613, 625), items: [613, 615, 621], want_response: false }, ItemSet { range: Range(684, 724), items: [700, 709, 718], want_response: false }, ItemSet { range: Range(781, 814), items: [788, 791, 793], want_response: false }, ItemSet { range: Range(906, 942), items: [906, 937, 938], want_response: false }, ItemSet { range: Range(942, 943), items: [], want_response: false }, ItemSet { range: Range(537, 552), items: [537, 551], want_response: true }, ItemSet { range: Range(552, 582), items: [552], want_response: true }, ItemSet { range: Range(740, 781), items: [], want_response: true }], wants: [9, 24, 26, 59, 66, 76, 162, 171, 192, 196, 284, 330, 342, 355, 364, 375, 429, 431, 446, 475, 489, 492, 502, 520, 534, 625, 631, 648, 664, 665, 670, 673, 677, 682, 683, 728, 739, 853, 866, 886, 890, 895, 949, 961, 964, 979, 986, 80, 251, 261, 582, 605, 684, 715, 781, 783, 914, 935, 942], provide: [(60, true), (67, true), (158, true), (163, true), (292, true), (303, true), (346, true), (353, true), (372, true), (397, true), (430, true), (438, true), (459, true), (480, true), (488, true), (515, true), (528, true), (532, true), (635, true), (667, true), (678, true), (724, true), (734, true), (814, true), (828, true), (877, true), (943, true), (950, true), (984, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(537, 552), items: [], want_response: false }, ItemSet { range: Range(552, 582), items: [558, 559, 574], want_response: false }, ItemSet { range: Range(740, 781), items: [740, 742, 772], want_response: false }], wants: [101, 107, 134, 205, 208, 245, 247, 254, 271, 593, 613, 615, 621, 700, 709, 718, 788, 791, 793, 906, 937, 938, 537, 551, 552], provide: [(9, true), (24, true), (26, true), (59, true), (66, true), (76, true), (162, true), (171, true), (192, true), (196, true), (284, true), (330, true), (342, true), (355, true), (364, true), (375, true), (429, true), (431, true), (446, true), (475, true), (489, true), (492, true), (502, true), (520, true), (534, true), (625, true), (631, true), (648, true), (664, true), (665, true), (670, true), (673, true), (677, true), (682, true), (683, true), (728, true), (739, true), (853, true), (866, true), (886, true), (890, true), (895, true), (949, true), (961, true), (964, true), (979, true), (986, true), (80, true), (251, true), (261, true), (582, true), (605, true), (684, true), (715, true), (781, true), (783, true), (914, true), (935, true), (942, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [558, 559, 574, 740, 742, 772], provide: [(101, true), (107, true), (134, true), (205, true), (208, true), (245, true), (247, true), (254, true), (271, true), (593, true), (613, true), (615, true), (621, true), (700, true), (709, true), (718, true), (788, true), (791, true), (793, true), (906, true), (937, true), (938, true), (537, true), (551, true), (552, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(558, true), (559, true), (574, true), (740, true), (742, true), (772, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 24, 26, 59, 66, 76, 80, 162, 171, 192, 196, 241, 251, 261, 272, 274, 284, 330, 342, 355, 364, 375, 429, 431, 446, 475, 489, 492, 502, 520, 534, 558, 559, 574, 582, 605, 625, 631, 648, 664, 665, 670, 673, 677, 682, 683, 684, 715, 728, 739, 740, 742, 772, 781, 783, 853, 866, 886, 890, 895, 914, 935, 942, 949, 961, 964, 979, 986} + [60, 67, 158, 163, 292, 303, 346, 353, 372, 397, 430, 438, 459, 480, 488, 515, 528, 532, 635, 667, 678, 724, 734, 814, 828, 877, 943, 950, 984, 101, 107, 134, 205, 208, 245, 247, 254, 271, 593, 613, 615, 621, 700, 709, 718, 788, 791, 793, 906, 937, 938, 537, 551, 552]
[INFO] [stdout] b all: {60, 67, 101, 107, 134, 158, 163, 205, 208, 241, 245, 247, 254, 271, 292, 303, 346, 353, 372, 397, 430, 438, 459, 480, 488, 515, 528, 532, 537, 551, 552, 593, 613, 615, 621, 635, 667, 678, 700, 709, 718, 724, 734, 788, 791, 793, 814, 828, 877, 906, 937, 938, 943, 950, 984} + [272, 274, 9, 24, 26, 59, 66, 76, 162, 171, 192, 196, 284, 330, 342, 355, 364, 375, 429, 431, 446, 475, 489, 492, 502, 520, 534, 625, 631, 648, 664, 665, 670, 673, 677, 682, 683, 728, 739, 853, 866, 886, 890, 895, 949, 961, 964, 979, 986, 80, 251, 261, 582, 605, 684, 715, 781, 783, 914, 935, 942, 558, 559, 574, 740, 742, 772]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 24, 26, 59, 60, 66, 67, 76, 80, 101, 107, 134, 158, 162, 163, 171, 192, 196, 205, 208, 241, 245, 247, 251, 254, 261, 271, 272, 274, 284, 292, 303, 330, 342, 346, 353, 355, 364, 372, 375, 397, 429, 430, 431, 438, 446, 459, 475, 480, 488, 489, 492, 502, 515, 520, 528, 532, 534, 537, 551, 552, 558, 559, 574, 582, 593, 605, 613, 615, 621, 625, 631, 635, 648, 664, 665, 667, 670, 673, 677, 678, 682, 683, 684, 700, 709, 715, 718, 724, 728, 734, 739, 740, 742, 772, 781, 783, 788, 791, 793, 814, 828, 853, 866, 877, 886, 890, 895, 906, 914, 935, 937, 938, 942, 943, 949, 950, 961, 964, 979, 984, 986]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 24, 26, 59, 60, 66, 67, 76, 80, 101, 107, 134, 158, 162, 163, 171, 192, 196, 205, 208, 241, 245, 247, 251, 254, 261, 271, 272, 274, 284, 292, 303, 330, 342, 346, 353, 355, 364, 372, 375, 397, 429, 430, 431, 438, 446, 459, 475, 480, 488, 489, 492, 502, 515, 520, 528, 532, 534, 537, 551, 552, 558, 559, 574, 582, 593, 605, 613, 615, 621, 625, 631, 635, 648, 664, 665, 667, 670, 673, 677, 678, 682, 683, 684, 700, 709, 715, 718, 724, 728, 734, 739, 740, 742, 772, 781, 783, 788, 791, 793, 814, 828, 853, 866, 877, 886, 890, 895, 906, 914, 935, 937, 938, 942, 943, 949, 950, 961, 964, 979, 984, 986], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 24, 26, 59, 60, 66, 67, 76, 80, 101, 107, 134, 158, 162, 163, 171, 192, 196, 205, 208, 241, 245, 247, 251, 254, 261, 271, 272, 274, 284, 292, 303, 330, 342, 346, 353, 355, 364, 372, 375, 397, 429, 430, 431, 438, 446, 459, 475, 480, 488, 489, 492, 502, 515, 520, 528, 532, 534, 537, 551, 552, 558, 559, 574, 582, 593, 605, 613, 615, 621, 625, 631, 635, 648, 664, 665, 667, 670, 673, 677, 678, 682, 683, 684, 700, 709, 715, 718, 724, 728, 734, 739, 740, 742, 772, 781, 783, 788, 791, 793, 814, 828, 853, 866, 877, 886, 890, 895, 906, 914, 935, 937, 938, 942, 943, 949, 950, 961, 964, 979, 984, 986], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 45, 77, 80, 83, 99, 136, 149, 155, 163, 168, 169, 177, 180, 190, 274, 287, 288, 293, 305, 312, 357, 369, 380, 390, 401, 411, 427, 432, 436, 439, 476, 483, 490, 495, 533, 545, 553, 572, 580, 583, 602, 604, 621, 623, 633, 637, 656, 664, 738, 760, 771, 782, 785, 813, 835, 847, 865, 870, 873, 881, 886, 896, 911, 922, 936, 977, 991, 993, 994}
[INFO] [stdout] b items: {2, 11, 23, 32, 43, 44, 107, 111, 121, 148, 157, 162, 192, 213, 229, 256, 262, 273, 284, 300, 302, 310, 317, 337, 348, 361, 366, 373, 387, 401, 404, 416, 425, 436, 447, 451, 461, 476, 535, 537, 558, 559, 562, 566, 582, 590, 611, 620, 632, 640, 658, 674, 699, 716, 717, 725, 735, 747, 750, 756, 760, 763, 774, 776, 786, 793, 796, 804, 819, 822, 824, 827, 836, 838, 853, 857, 863, 876, 883, 884, 987, 989, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 995), fp: EncodedCountingMonoid(70, SumMonoid(36350)) }], item_sets: [ItemSet { range: Range(995, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 559), fp: EncodedCountingMonoid(41, SumMonoid(11618)) }, Fingerprint { range: Range(559, 995), fp: EncodedCountingMonoid(41, SumMonoid(30949)) }], item_sets: [ItemSet { range: Range(995, 2), items: [999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 305), fp: EncodedCountingMonoid(19, SumMonoid(3015)) }, Fingerprint { range: Range(305, 559), fp: EncodedCountingMonoid(19, SumMonoid(8234)) }, Fingerprint { range: Range(559, 813), fp: EncodedCountingMonoid(16, SumMonoid(10611)) }, Fingerprint { range: Range(813, 995), fp: EncodedCountingMonoid(16, SumMonoid(14490)) }], item_sets: [], wants: [999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 162), fp: EncodedCountingMonoid(11, SumMonoid(799)) }, Fingerprint { range: Range(162, 305), fp: EncodedCountingMonoid(10, SumMonoid(2473)) }, Fingerprint { range: Range(305, 416), fp: EncodedCountingMonoid(10, SumMonoid(3604)) }, Fingerprint { range: Range(416, 559), fp: EncodedCountingMonoid(10, SumMonoid(4742)) }, Fingerprint { range: Range(559, 725), fp: EncodedCountingMonoid(14, SumMonoid(8826)) }, Fingerprint { range: Range(725, 813), fp: EncodedCountingMonoid(13, SumMonoid(9965)) }, Fingerprint { range: Range(813, 857), fp: EncodedCountingMonoid(7, SumMonoid(5819)) }, Fingerprint { range: Range(857, 995), fp: EncodedCountingMonoid(7, SumMonoid(6339)) }], item_sets: [], wants: [], provide: [(999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 99), fp: EncodedCountingMonoid(5, SumMonoid(287)) }, Fingerprint { range: Range(99, 162), fp: EncodedCountingMonoid(4, SumMonoid(539)) }, Fingerprint { range: Range(162, 190), fp: EncodedCountingMonoid(5, SumMonoid(857)) }, Fingerprint { range: Range(190, 305), fp: EncodedCountingMonoid(5, SumMonoid(1332)) }, Fingerprint { range: Range(305, 380), fp: EncodedCountingMonoid(4, SumMonoid(1343)) }, Fingerprint { range: Range(380, 416), fp: EncodedCountingMonoid(4, SumMonoid(1582)) }, Fingerprint { range: Range(416, 490), fp: EncodedCountingMonoid(6, SumMonoid(2693)) }, Fingerprint { range: Range(490, 559), fp: EncodedCountingMonoid(5, SumMonoid(2616)) }, Fingerprint { range: Range(559, 623), fp: EncodedCountingMonoid(6, SumMonoid(3562)) }, Fingerprint { range: Range(623, 725), fp: EncodedCountingMonoid(5, SumMonoid(3213)) }, Fingerprint { range: Range(725, 782), fp: EncodedCountingMonoid(3, SumMonoid(2269)) }, Fingerprint { range: Range(857, 922), fp: EncodedCountingMonoid(7, SumMonoid(6182)) }, Fingerprint { range: Range(922, 995), fp: EncodedCountingMonoid(6, SumMonoid(5813)) }], item_sets: [ItemSet { range: Range(782, 813), items: [782, 785], want_response: true }, ItemSet { range: Range(813, 847), items: [813, 835], want_response: true }, ItemSet { range: Range(847, 857), items: [847], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 32), fp: EncodedCountingMonoid(3, SumMonoid(36)) }, Fingerprint { range: Range(32, 99), fp: EncodedCountingMonoid(3, SumMonoid(119)) }, Fingerprint { range: Range(99, 148), fp: EncodedCountingMonoid(3, SumMonoid(339)) }, Fingerprint { range: Range(190, 273), fp: EncodedCountingMonoid(5, SumMonoid(1152)) }, Fingerprint { range: Range(273, 305), fp: EncodedCountingMonoid(4, SumMonoid(1159)) }, Fingerprint { range: Range(305, 361), fp: EncodedCountingMonoid(4, SumMonoid(1312)) }, Fingerprint { range: Range(361, 380), fp: EncodedCountingMonoid(3, SumMonoid(1100)) }, Fingerprint { range: Range(416, 451), fp: EncodedCountingMonoid(4, SumMonoid(1724)) }, Fingerprint { range: Range(451, 490), fp: EncodedCountingMonoid(3, SumMonoid(1388)) }, Fingerprint { range: Range(559, 590), fp: EncodedCountingMonoid(4, SumMonoid(2269)) }, Fingerprint { range: Range(590, 623), fp: EncodedCountingMonoid(3, SumMonoid(1821)) }, Fingerprint { range: Range(623, 699), fp: EncodedCountingMonoid(4, SumMonoid(2604)) }, Fingerprint { range: Range(699, 725), fp: EncodedCountingMonoid(3, SumMonoid(2132)) }, Fingerprint { range: Range(725, 760), fp: EncodedCountingMonoid(5, SumMonoid(3713)) }, Fingerprint { range: Range(760, 782), fp: EncodedCountingMonoid(4, SumMonoid(3073)) }, Fingerprint { range: Range(857, 883), fp: EncodedCountingMonoid(3, SumMonoid(2596)) }], item_sets: [ItemSet { range: Range(782, 813), items: [786, 793, 796, 804], want_response: false }, ItemSet { range: Range(813, 847), items: [819, 822, 824, 827, 836, 838], want_response: false }, ItemSet { range: Range(847, 857), items: [853], want_response: false }, ItemSet { range: Range(148, 162), items: [148, 157], want_response: true }, ItemSet { range: Range(162, 190), items: [162], want_response: true }, ItemSet { range: Range(380, 404), items: [387, 401], want_response: true }, ItemSet { range: Range(404, 416), items: [404], want_response: true }, ItemSet { range: Range(490, 558), items: [535, 537], want_response: true }, ItemSet { range: Range(558, 559), items: [558], want_response: true }, ItemSet { range: Range(883, 922), items: [883, 884], want_response: true }, ItemSet { range: Range(922, 995), items: [987, 989], want_response: true }], wants: [782, 785, 813, 835, 847], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(623, 656), fp: EncodedCountingMonoid(3, SumMonoid(1893)) }], item_sets: [ItemSet { range: Range(148, 162), items: [149, 155], want_response: false }, ItemSet { range: Range(162, 190), items: [163, 168, 169, 177, 180], want_response: false }, ItemSet { range: Range(380, 404), items: [380, 390, 401], want_response: false }, ItemSet { range: Range(404, 416), items: [411], want_response: false }, ItemSet { range: Range(490, 558), items: [490, 495, 533, 545, 553], want_response: false }, ItemSet { range: Range(558, 559), items: [], want_response: false }, ItemSet { range: Range(883, 922), items: [886, 896, 911], want_response: false }, ItemSet { range: Range(922, 995), items: [922, 936, 977, 991, 993, 994], want_response: false }, ItemSet { range: Range(2, 32), items: [2], want_response: true }, ItemSet { range: Range(32, 80), items: [45, 77], want_response: true }, ItemSet { range: Range(80, 99), items: [80, 83], want_response: true }, ItemSet { range: Range(99, 148), items: [99, 136], want_response: true }, ItemSet { range: Range(190, 273), items: [190], want_response: true }, ItemSet { range: Range(273, 288), items: [274, 287], want_response: true }, ItemSet { range: Range(288, 305), items: [288, 293], want_response: true }, ItemSet { range: Range(305, 357), items: [305, 312], want_response: true }, ItemSet { range: Range(357, 361), items: [357], want_response: true }, ItemSet { range: Range(361, 380), items: [369], want_response: true }, ItemSet { range: Range(416, 436), items: [427, 432], want_response: true }, ItemSet { range: Range(436, 451), items: [436, 439], want_response: true }, ItemSet { range: Range(451, 490), items: [476, 483], want_response: true }, ItemSet { range: Range(559, 583), items: [572, 580], want_response: true }, ItemSet { range: Range(583, 590), items: [583], want_response: true }, ItemSet { range: Range(590, 621), items: [602, 604], want_response: true }, ItemSet { range: Range(621, 623), items: [621], want_response: true }, ItemSet { range: Range(656, 699), items: [656, 664], want_response: true }, ItemSet { range: Range(699, 725), items: [], want_response: true }, ItemSet { range: Range(725, 760), items: [738], want_response: true }, ItemSet { range: Range(760, 782), items: [760, 771], want_response: true }, ItemSet { range: Range(857, 873), items: [865, 870], want_response: true }, ItemSet { range: Range(873, 883), items: [873, 881], want_response: true }], wants: [786, 793, 796, 804, 819, 822, 824, 827, 836, 838, 853, 148, 157, 162, 387, 404, 535, 537, 558, 883, 884, 987, 989], provide: [(782, true), (785, true), (813, true), (835, true), (847, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(2, 32), items: [2, 11, 23], want_response: false }, ItemSet { range: Range(32, 80), items: [32, 43, 44], want_response: false }, ItemSet { range: Range(80, 99), items: [], want_response: false }, ItemSet { range: Range(99, 148), items: [107, 111, 121], want_response: false }, ItemSet { range: Range(190, 273), items: [192, 213, 229, 256, 262], want_response: false }, ItemSet { range: Range(273, 288), items: [273, 284], want_response: false }, ItemSet { range: Range(288, 305), items: [300, 302], want_response: false }, ItemSet { range: Range(305, 357), items: [310, 317, 337, 348], want_response: false }, ItemSet { range: Range(357, 361), items: [], want_response: false }, ItemSet { range: Range(361, 380), items: [361, 366, 373], want_response: false }, ItemSet { range: Range(416, 436), items: [416, 425], want_response: false }, ItemSet { range: Range(436, 451), items: [436, 447], want_response: false }, ItemSet { range: Range(451, 490), items: [451, 461, 476], want_response: false }, ItemSet { range: Range(559, 583), items: [559, 562, 566, 582], want_response: false }, ItemSet { range: Range(583, 590), items: [], want_response: false }, ItemSet { range: Range(590, 621), items: [590, 611, 620], want_response: false }, ItemSet { range: Range(621, 623), items: [], want_response: false }, ItemSet { range: Range(656, 699), items: [658, 674], want_response: false }, ItemSet { range: Range(699, 725), items: [699, 716, 717], want_response: false }, ItemSet { range: Range(725, 760), items: [725, 735, 747, 750, 756], want_response: false }, ItemSet { range: Range(760, 782), items: [760, 763, 774, 776], want_response: false }, ItemSet { range: Range(857, 873), items: [857, 863], want_response: false }, ItemSet { range: Range(873, 883), items: [876], want_response: false }, ItemSet { range: Range(623, 656), items: [632, 640], want_response: true }], wants: [149, 155, 163, 168, 169, 177, 180, 380, 390, 411, 490, 495, 533, 545, 553, 886, 896, 911, 922, 936, 977, 991, 993, 994, 45, 77, 80, 83, 99, 136, 190, 274, 287, 288, 293, 305, 312, 357, 369, 427, 432, 439, 483, 572, 580, 583, 602, 604, 621, 656, 664, 738, 771, 865, 870, 873, 881], provide: [(786, true), (793, true), (796, true), (804, true), (819, true), (822, true), (824, true), (827, true), (836, true), (838, true), (853, true), (148, true), (157, true), (162, true), (387, true), (404, true), (535, true), (537, true), (558, true), (883, true), (884, true), (987, true), (989, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(623, 656), items: [623, 633, 637], want_response: false }], wants: [11, 23, 32, 43, 44, 107, 111, 121, 192, 213, 229, 256, 262, 273, 284, 300, 302, 310, 317, 337, 348, 361, 366, 373, 416, 425, 447, 451, 461, 559, 562, 566, 582, 590, 611, 620, 658, 674, 699, 716, 717, 725, 735, 747, 750, 756, 763, 774, 776, 857, 863, 876, 632, 640], provide: [(149, true), (155, true), (163, true), (168, true), (169, true), (177, true), (180, true), (380, true), (390, true), (411, true), (490, true), (495, true), (533, true), (545, true), (553, true), (886, true), (896, true), (911, true), (922, true), (936, true), (977, true), (991, true), (993, true), (994, true), (45, true), (77, true), (80, true), (83, true), (99, true), (136, true), (190, true), (274, true), (287, true), (288, true), (293, true), (305, true), (312, true), (357, true), (369, true), (427, true), (432, true), (439, true), (483, true), (572, true), (580, true), (583, true), (602, true), (604, true), (621, true), (656, true), (664, true), (738, true), (771, true), (865, true), (870, true), (873, true), (881, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [623, 633, 637], provide: [(11, true), (23, true), (32, true), (43, true), (44, true), (107, true), (111, true), (121, true), (192, true), (213, true), (229, true), (256, true), (262, true), (273, true), (284, true), (300, true), (302, true), (310, true), (317, true), (337, true), (348, true), (361, true), (366, true), (373, true), (416, true), (425, true), (447, true), (451, true), (461, true), (559, true), (562, true), (566, true), (582, true), (590, true), (611, true), (620, true), (658, true), (674, true), (699, true), (716, true), (717, true), (725, true), (735, true), (747, true), (750, true), (756, true), (763, true), (774, true), (776, true), (857, true), (863, true), (876, true), (632, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(623, true), (633, true), (637, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 45, 77, 80, 83, 99, 136, 149, 155, 163, 168, 169, 177, 180, 190, 274, 287, 288, 293, 305, 312, 357, 369, 380, 390, 401, 411, 427, 432, 436, 439, 476, 483, 490, 495, 533, 545, 553, 572, 580, 583, 602, 604, 621, 623, 633, 637, 656, 664, 738, 760, 771, 782, 785, 813, 835, 847, 865, 870, 873, 881, 886, 896, 911, 922, 936, 977, 991, 993, 994} + [999, 786, 793, 796, 804, 819, 822, 824, 827, 836, 838, 853, 148, 157, 162, 387, 404, 535, 537, 558, 883, 884, 987, 989, 11, 23, 32, 43, 44, 107, 111, 121, 192, 213, 229, 256, 262, 273, 284, 300, 302, 310, 317, 337, 348, 361, 366, 373, 416, 425, 447, 451, 461, 559, 562, 566, 582, 590, 611, 620, 658, 674, 699, 716, 717, 725, 735, 747, 750, 756, 763, 774, 776, 857, 863, 876, 632, 640]
[INFO] [stdout] b all: {2, 11, 23, 32, 43, 44, 107, 111, 121, 148, 157, 162, 192, 213, 229, 256, 262, 273, 284, 300, 302, 310, 317, 337, 348, 361, 366, 373, 387, 401, 404, 416, 425, 436, 447, 451, 461, 476, 535, 537, 558, 559, 562, 566, 582, 590, 611, 620, 632, 640, 658, 674, 699, 716, 717, 725, 735, 747, 750, 756, 760, 763, 774, 776, 786, 793, 796, 804, 819, 822, 824, 827, 836, 838, 853, 857, 863, 876, 883, 884, 987, 989, 999} + [782, 785, 813, 835, 847, 149, 155, 163, 168, 169, 177, 180, 380, 390, 411, 490, 495, 533, 545, 553, 886, 896, 911, 922, 936, 977, 991, 993, 994, 45, 77, 80, 83, 99, 136, 190, 274, 287, 288, 293, 305, 312, 357, 369, 427, 432, 439, 483, 572, 580, 583, 602, 604, 621, 656, 664, 738, 771, 865, 870, 873, 881, 623, 633, 637]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 11, 23, 32, 43, 44, 45, 77, 80, 83, 99, 107, 111, 121, 136, 148, 149, 155, 157, 162, 163, 168, 169, 177, 180, 190, 192, 213, 229, 256, 262, 273, 274, 284, 287, 288, 293, 300, 302, 305, 310, 312, 317, 337, 348, 357, 361, 366, 369, 373, 380, 387, 390, 401, 404, 411, 416, 425, 427, 432, 436, 439, 447, 451, 461, 476, 483, 490, 495, 533, 535, 537, 545, 553, 558, 559, 562, 566, 572, 580, 582, 583, 590, 602, 604, 611, 620, 621, 623, 632, 633, 637, 640, 656, 658, 664, 674, 699, 716, 717, 725, 735, 738, 747, 750, 756, 760, 763, 771, 774, 776, 782, 785, 786, 793, 796, 804, 813, 819, 822, 824, 827, 835, 836, 838, 847, 853, 857, 863, 865, 870, 873, 876, 881, 883, 884, 886, 896, 911, 922, 936, 977, 987, 989, 991, 993, 994, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 11, 23, 32, 43, 44, 45, 77, 80, 83, 99, 107, 111, 121, 136, 148, 149, 155, 157, 162, 163, 168, 169, 177, 180, 190, 192, 213, 229, 256, 262, 273, 274, 284, 287, 288, 293, 300, 302, 305, 310, 312, 317, 337, 348, 357, 361, 366, 369, 373, 380, 387, 390, 401, 404, 411, 416, 425, 427, 432, 436, 439, 447, 451, 461, 476, 483, 490, 495, 533, 535, 537, 545, 553, 558, 559, 562, 566, 572, 580, 582, 583, 590, 602, 604, 611, 620, 621, 623, 632, 633, 637, 640, 656, 658, 664, 674, 699, 716, 717, 725, 735, 738, 747, 750, 756, 760, 763, 771, 774, 776, 782, 785, 786, 793, 796, 804, 813, 819, 822, 824, 827, 835, 836, 838, 847, 853, 857, 863, 865, 870, 873, 876, 881, 883, 884, 886, 896, 911, 922, 936, 977, 987, 989, 991, 993, 994, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 11, 23, 32, 43, 44, 45, 77, 80, 83, 99, 107, 111, 121, 136, 148, 149, 155, 157, 162, 163, 168, 169, 177, 180, 190, 192, 213, 229, 256, 262, 273, 274, 284, 287, 288, 293, 300, 302, 305, 310, 312, 317, 337, 348, 357, 361, 366, 369, 373, 380, 387, 390, 401, 404, 411, 416, 425, 427, 432, 436, 439, 447, 451, 461, 476, 483, 490, 495, 533, 535, 537, 545, 553, 558, 559, 562, 566, 572, 580, 582, 583, 590, 602, 604, 611, 620, 621, 623, 632, 633, 637, 640, 656, 658, 664, 674, 699, 716, 717, 725, 735, 738, 747, 750, 756, 760, 763, 771, 774, 776, 782, 785, 786, 793, 796, 804, 813, 819, 822, 824, 827, 835, 836, 838, 847, 853, 857, 863, 865, 870, 873, 876, 881, 883, 884, 886, 896, 911, 922, 936, 977, 987, 989, 991, 993, 994, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {8, 22, 49, 73, 100, 109, 112, 131, 146, 150, 168, 175, 196, 203, 224, 239, 283, 295, 311, 336, 340, 343, 347, 351, 361, 398, 439, 443, 466, 477, 480, 482, 501, 530, 534, 546, 594, 598, 609, 612, 614, 624, 633, 684, 687, 690, 694, 699, 706, 736, 750, 771, 783, 805, 817, 835, 841, 842, 843, 844, 861, 863, 890, 896, 923, 944, 953}
[INFO] [stdout] b items: {21, 25, 27, 47, 102, 107, 140, 206, 216, 226, 246, 256, 327, 340, 345, 397, 414, 424, 447, 460, 491, 514, 553, 554, 577, 581, 585, 648, 652, 666, 672, 684, 689, 697, 701, 705, 708, 717, 730, 751, 754, 797, 819, 881, 934, 962, 985, 998}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 954), fp: EncodedCountingMonoid(67, SumMonoid(34009)) }], item_sets: [ItemSet { range: Range(954, 8), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 554), fp: EncodedCountingMonoid(23, SumMonoid(6331)) }, Fingerprint { range: Range(554, 954), fp: EncodedCountingMonoid(22, SumMonoid(15502)) }], item_sets: [ItemSet { range: Range(954, 8), items: [962, 985, 998], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 311), fp: EncodedCountingMonoid(18, SumMonoid(2683)) }, Fingerprint { range: Range(311, 554), fp: EncodedCountingMonoid(18, SumMonoid(7685)) }, Fingerprint { range: Range(554, 783), fp: EncodedCountingMonoid(16, SumMonoid(10701)) }, Fingerprint { range: Range(783, 954), fp: EncodedCountingMonoid(15, SumMonoid(12940)) }], item_sets: [], wants: [962, 985, 998], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 140), fp: EncodedCountingMonoid(6, SumMonoid(329)) }, Fingerprint { range: Range(140, 311), fp: EncodedCountingMonoid(6, SumMonoid(1290)) }, Fingerprint { range: Range(311, 447), fp: EncodedCountingMonoid(6, SumMonoid(2247)) }, Fingerprint { range: Range(447, 554), fp: EncodedCountingMonoid(5, SumMonoid(2465)) }, Fingerprint { range: Range(554, 689), fp: EncodedCountingMonoid(9, SumMonoid(5619)) }, Fingerprint { range: Range(689, 783), fp: EncodedCountingMonoid(9, SumMonoid(6452)) }], item_sets: [ItemSet { range: Range(783, 881), items: [797, 819], want_response: true }, ItemSet { range: Range(881, 954), items: [881, 934], want_response: true }], wants: [], provide: [(962, true), (985, true), (998, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 100), fp: EncodedCountingMonoid(4, SumMonoid(152)) }, Fingerprint { range: Range(100, 140), fp: EncodedCountingMonoid(4, SumMonoid(452)) }, Fingerprint { range: Range(140, 203), fp: EncodedCountingMonoid(5, SumMonoid(835)) }, Fingerprint { range: Range(203, 311), fp: EncodedCountingMonoid(5, SumMonoid(1244)) }, Fingerprint { range: Range(311, 351), fp: EncodedCountingMonoid(5, SumMonoid(1677)) }, Fingerprint { range: Range(351, 447), fp: EncodedCountingMonoid(5, SumMonoid(1992)) }, Fingerprint { range: Range(447, 501), fp: EncodedCountingMonoid(4, SumMonoid(1905)) }, Fingerprint { range: Range(501, 554), fp: EncodedCountingMonoid(4, SumMonoid(2111)) }, Fingerprint { range: Range(554, 624), fp: EncodedCountingMonoid(5, SumMonoid(3027)) }, Fingerprint { range: Range(624, 689), fp: EncodedCountingMonoid(4, SumMonoid(2628)) }, Fingerprint { range: Range(689, 736), fp: EncodedCountingMonoid(4, SumMonoid(2789)) }, Fingerprint { range: Range(736, 783), fp: EncodedCountingMonoid(3, SumMonoid(2257)) }], item_sets: [ItemSet { range: Range(783, 881), items: [783, 805, 817, 835, 841, 842, 843, 844, 861, 863], want_response: false }, ItemSet { range: Range(881, 954), items: [890, 896, 923, 944, 953], want_response: false }], wants: [797, 819, 881, 934], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(203, 246), fp: EncodedCountingMonoid(3, SumMonoid(648)) }, Fingerprint { range: Range(624, 672), fp: EncodedCountingMonoid(3, SumMonoid(1966)) }, Fingerprint { range: Range(689, 708), fp: EncodedCountingMonoid(4, SumMonoid(2792)) }, Fingerprint { range: Range(708, 736), fp: EncodedCountingMonoid(3, SumMonoid(2155)) }], item_sets: [ItemSet { range: Range(8, 27), items: [21, 25], want_response: true }, ItemSet { range: Range(27, 100), items: [27, 47], want_response: true }, ItemSet { range: Range(100, 140), items: [102, 107], want_response: true }, ItemSet { range: Range(140, 203), items: [140], want_response: true }, ItemSet { range: Range(246, 311), items: [246, 256], want_response: true }, ItemSet { range: Range(311, 345), items: [327, 340], want_response: true }, ItemSet { range: Range(345, 351), items: [345], want_response: true }, ItemSet { range: Range(351, 424), items: [397, 414], want_response: true }, ItemSet { range: Range(424, 447), items: [424], want_response: true }, ItemSet { range: Range(447, 491), items: [447, 460], want_response: true }, ItemSet { range: Range(491, 501), items: [491], want_response: true }, ItemSet { range: Range(501, 554), items: [514, 553], want_response: true }, ItemSet { range: Range(554, 581), items: [554, 577], want_response: true }, ItemSet { range: Range(581, 624), items: [581, 585], want_response: true }, ItemSet { range: Range(672, 689), items: [672, 684], want_response: true }, ItemSet { range: Range(736, 783), items: [751, 754], want_response: true }], wants: [783, 805, 817, 835, 841, 842, 843, 844, 861, 863, 890, 896, 923, 944, 953], provide: [(797, true), (819, true), (881, true), (934, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(8, 27), items: [8, 22], want_response: false }, ItemSet { range: Range(27, 100), items: [49, 73], want_response: false }, ItemSet { range: Range(100, 140), items: [100, 109, 112, 131], want_response: false }, ItemSet { range: Range(140, 203), items: [146, 150, 168, 175, 196], want_response: false }, ItemSet { range: Range(246, 311), items: [283, 295], want_response: false }, ItemSet { range: Range(311, 345), items: [311, 336, 340, 343], want_response: false }, ItemSet { range: Range(345, 351), items: [347], want_response: false }, ItemSet { range: Range(351, 424), items: [351, 361, 398], want_response: false }, ItemSet { range: Range(424, 447), items: [439, 443], want_response: false }, ItemSet { range: Range(447, 491), items: [466, 477, 480, 482], want_response: false }, ItemSet { range: Range(491, 501), items: [], want_response: false }, ItemSet { range: Range(501, 554), items: [501, 530, 534, 546], want_response: false }, ItemSet { range: Range(554, 581), items: [], want_response: false }, ItemSet { range: Range(581, 624), items: [594, 598, 609, 612, 614], want_response: false }, ItemSet { range: Range(672, 689), items: [684, 687], want_response: false }, ItemSet { range: Range(736, 783), items: [736, 750, 771], want_response: false }, ItemSet { range: Range(203, 239), items: [203, 224], want_response: true }, ItemSet { range: Range(239, 246), items: [239], want_response: true }, ItemSet { range: Range(624, 672), items: [624, 633], want_response: true }, ItemSet { range: Range(689, 699), items: [690, 694], want_response: true }, ItemSet { range: Range(699, 708), items: [699, 706], want_response: true }, ItemSet { range: Range(708, 736), items: [], want_response: true }], wants: [21, 25, 27, 47, 102, 107, 140, 246, 256, 327, 345, 397, 414, 424, 447, 460, 491, 514, 553, 554, 577, 581, 585, 672, 751, 754], provide: [(783, true), (805, true), (817, true), (835, true), (841, true), (842, true), (843, true), (844, true), (861, true), (863, true), (890, true), (896, true), (923, true), (944, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(203, 239), items: [206, 216, 226], want_response: false }, ItemSet { range: Range(239, 246), items: [], want_response: false }, ItemSet { range: Range(624, 672), items: [648, 652, 666], want_response: false }, ItemSet { range: Range(689, 699), items: [689, 697], want_response: false }, ItemSet { range: Range(699, 708), items: [701, 705], want_response: false }, ItemSet { range: Range(708, 736), items: [708, 717, 730], want_response: false }], wants: [8, 22, 49, 73, 100, 109, 112, 131, 146, 150, 168, 175, 196, 283, 295, 311, 336, 343, 347, 351, 361, 398, 439, 443, 466, 477, 480, 482, 501, 530, 534, 546, 594, 598, 609, 612, 614, 687, 736, 750, 771, 203, 224, 239, 624, 633, 690, 694, 699, 706], provide: [(21, true), (25, true), (27, true), (47, true), (102, true), (107, true), (140, true), (246, true), (256, true), (327, true), (345, true), (397, true), (414, true), (424, true), (447, true), (460, true), (491, true), (514, true), (553, true), (554, true), (577, true), (581, true), (585, true), (672, true), (751, true), (754, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [206, 216, 226, 648, 652, 666, 689, 697, 701, 705, 708, 717, 730], provide: [(8, true), (22, true), (49, true), (73, true), (100, true), (109, true), (112, true), (131, true), (146, true), (150, true), (168, true), (175, true), (196, true), (283, true), (295, true), (311, true), (336, true), (343, true), (347, true), (351, true), (361, true), (398, true), (439, true), (443, true), (466, true), (477, true), (480, true), (482, true), (501, true), (530, true), (534, true), (546, true), (594, true), (598, true), (609, true), (612, true), (614, true), (687, true), (736, true), (750, true), (771, true), (203, true), (224, true), (239, true), (624, true), (633, true), (690, true), (694, true), (699, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(206, true), (216, true), (226, true), (648, true), (652, true), (666, true), (689, true), (697, true), (701, true), (705, true), (708, true), (717, true), (730, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {8, 22, 49, 73, 100, 109, 112, 131, 146, 150, 168, 175, 196, 203, 224, 239, 283, 295, 311, 336, 340, 343, 347, 351, 361, 398, 439, 443, 466, 477, 480, 482, 501, 530, 534, 546, 594, 598, 609, 612, 614, 624, 633, 684, 687, 690, 694, 699, 706, 736, 750, 771, 783, 805, 817, 835, 841, 842, 843, 844, 861, 863, 890, 896, 923, 944, 953} + [962, 985, 998, 797, 819, 881, 934, 21, 25, 27, 47, 102, 107, 140, 246, 256, 327, 345, 397, 414, 424, 447, 460, 491, 514, 553, 554, 577, 581, 585, 672, 751, 754, 206, 216, 226, 648, 652, 666, 689, 697, 701, 705, 708, 717, 730]
[INFO] [stdout] b all: {21, 25, 27, 47, 102, 107, 140, 206, 216, 226, 246, 256, 327, 340, 345, 397, 414, 424, 447, 460, 491, 514, 553, 554, 577, 581, 585, 648, 652, 666, 672, 684, 689, 697, 701, 705, 708, 717, 730, 751, 754, 797, 819, 881, 934, 962, 985, 998} + [783, 805, 817, 835, 841, 842, 843, 844, 861, 863, 890, 896, 923, 944, 953, 8, 22, 49, 73, 100, 109, 112, 131, 146, 150, 168, 175, 196, 283, 295, 311, 336, 343, 347, 351, 361, 398, 439, 443, 466, 477, 480, 482, 501, 530, 534, 546, 594, 598, 609, 612, 614, 687, 736, 750, 771, 203, 224, 239, 624, 633, 690, 694, 699, 706]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 21, 22, 25, 27, 47, 49, 73, 100, 102, 107, 109, 112, 131, 140, 146, 150, 168, 175, 196, 203, 206, 216, 224, 226, 239, 246, 256, 283, 295, 311, 327, 336, 340, 343, 345, 347, 351, 361, 397, 398, 414, 424, 439, 443, 447, 460, 466, 477, 480, 482, 491, 501, 514, 530, 534, 546, 553, 554, 577, 581, 585, 594, 598, 609, 612, 614, 624, 633, 648, 652, 666, 672, 684, 687, 689, 690, 694, 697, 699, 701, 705, 706, 708, 717, 730, 736, 750, 751, 754, 771, 783, 797, 805, 817, 819, 835, 841, 842, 843, 844, 861, 863, 881, 890, 896, 923, 934, 944, 953, 962, 985, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 21, 22, 25, 27, 47, 49, 73, 100, 102, 107, 109, 112, 131, 140, 146, 150, 168, 175, 196, 203, 206, 216, 224, 226, 239, 246, 256, 283, 295, 311, 327, 336, 340, 343, 345, 347, 351, 361, 397, 398, 414, 424, 439, 443, 447, 460, 466, 477, 480, 482, 491, 501, 514, 530, 534, 546, 553, 554, 577, 581, 585, 594, 598, 609, 612, 614, 624, 633, 648, 652, 666, 672, 684, 687, 689, 690, 694, 697, 699, 701, 705, 706, 708, 717, 730, 736, 750, 751, 754, 771, 783, 797, 805, 817, 819, 835, 841, 842, 843, 844, 861, 863, 881, 890, 896, 923, 934, 944, 953, 962, 985, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 21, 22, 25, 27, 47, 49, 73, 100, 102, 107, 109, 112, 131, 140, 146, 150, 168, 175, 196, 203, 206, 216, 224, 226, 239, 246, 256, 283, 295, 311, 327, 336, 340, 343, 345, 347, 351, 361, 397, 398, 414, 424, 439, 443, 447, 460, 466, 477, 480, 482, 491, 501, 514, 530, 534, 546, 553, 554, 577, 581, 585, 594, 598, 609, 612, 614, 624, 633, 648, 652, 666, 672, 684, 687, 689, 690, 694, 697, 699, 701, 705, 706, 708, 717, 730, 736, 750, 751, 754, 771, 783, 797, 805, 817, 819, 835, 841, 842, 843, 844, 861, 863, 881, 890, 896, 923, 934, 944, 953, 962, 985, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 29, 43, 65, 68, 97, 105, 128, 132, 135, 158, 162, 176, 191, 192, 196, 214, 224, 247, 259, 263, 279, 309, 310, 318, 334, 365, 375, 377, 378, 383, 384, 404, 417, 441, 446, 451, 455, 456, 465, 472, 477, 520, 525, 532, 546, 551, 552, 584, 585, 591, 596, 602, 611, 619, 628, 634, 636, 643, 646, 669, 675, 716, 729, 760, 779, 792, 793, 794, 804, 806, 807, 810, 821, 832, 841, 851, 856, 881, 894, 922, 952, 963, 964, 975}
[INFO] [stdout] b items: {16, 18, 25, 39, 40, 42, 51, 82, 83, 85, 95, 101, 118, 122, 144, 154, 164, 188, 201, 216, 229, 234, 242, 261, 288, 298, 313, 317, 320, 324, 350, 367, 386, 393, 399, 405, 418, 423, 425, 442, 453, 470, 477, 489, 498, 529, 540, 564, 587, 593, 596, 609, 621, 626, 633, 644, 685, 688, 695, 701, 768, 787, 788, 789, 800, 801, 810, 817, 824, 848, 850, 851, 859, 869, 873, 877, 895, 899, 905, 914, 986, 995}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 976), fp: EncodedCountingMonoid(85, SumMonoid(42668)) }], item_sets: [ItemSet { range: Range(976, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 453), fp: EncodedCountingMonoid(40, SumMonoid(8818)) }, Fingerprint { range: Range(453, 976), fp: EncodedCountingMonoid(40, SumMonoid(28522)) }], item_sets: [ItemSet { range: Range(976, 1), items: [986, 995], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 259), fp: EncodedCountingMonoid(19, SumMonoid(2563)) }, Fingerprint { range: Range(259, 453), fp: EncodedCountingMonoid(18, SumMonoid(6493)) }, Fingerprint { range: Range(453, 675), fp: EncodedCountingMonoid(24, SumMonoid(13595)) }, Fingerprint { range: Range(675, 976), fp: EncodedCountingMonoid(24, SumMonoid(20017)) }], item_sets: [], wants: [986, 995], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 118), fp: EncodedCountingMonoid(12, SumMonoid(677)) }, Fingerprint { range: Range(118, 259), fp: EncodedCountingMonoid(11, SumMonoid(2012)) }, Fingerprint { range: Range(259, 386), fp: EncodedCountingMonoid(9, SumMonoid(2838)) }, Fingerprint { range: Range(386, 453), fp: EncodedCountingMonoid(8, SumMonoid(3291)) }, Fingerprint { range: Range(453, 587), fp: EncodedCountingMonoid(8, SumMonoid(4020)) }, Fingerprint { range: Range(587, 675), fp: EncodedCountingMonoid(8, SumMonoid(4909)) }, Fingerprint { range: Range(675, 824), fp: EncodedCountingMonoid(12, SumMonoid(9129)) }, Fingerprint { range: Range(824, 976), fp: EncodedCountingMonoid(12, SumMonoid(10464)) }], item_sets: [], wants: [], provide: [(986, true), (995, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 68), fp: EncodedCountingMonoid(4, SumMonoid(138)) }, Fingerprint { range: Range(68, 118), fp: EncodedCountingMonoid(3, SumMonoid(270)) }, Fingerprint { range: Range(118, 191), fp: EncodedCountingMonoid(6, SumMonoid(891)) }, Fingerprint { range: Range(191, 259), fp: EncodedCountingMonoid(6, SumMonoid(1264)) }, Fingerprint { range: Range(259, 365), fp: EncodedCountingMonoid(7, SumMonoid(2072)) }, Fingerprint { range: Range(365, 386), fp: EncodedCountingMonoid(6, SumMonoid(2262)) }, Fingerprint { range: Range(386, 446), fp: EncodedCountingMonoid(3, SumMonoid(1262)) }, Fingerprint { range: Range(453, 532), fp: EncodedCountingMonoid(7, SumMonoid(3370)) }, Fingerprint { range: Range(532, 587), fp: EncodedCountingMonoid(6, SumMonoid(3350)) }, Fingerprint { range: Range(587, 634), fp: EncodedCountingMonoid(6, SumMonoid(3647)) }, Fingerprint { range: Range(634, 675), fp: EncodedCountingMonoid(5, SumMonoid(3228)) }, Fingerprint { range: Range(675, 794), fp: EncodedCountingMonoid(7, SumMonoid(5244)) }, Fingerprint { range: Range(794, 824), fp: EncodedCountingMonoid(6, SumMonoid(4842)) }, Fingerprint { range: Range(824, 922), fp: EncodedCountingMonoid(6, SumMonoid(5155)) }, Fingerprint { range: Range(922, 976), fp: EncodedCountingMonoid(5, SumMonoid(4776)) }], item_sets: [ItemSet { range: Range(446, 453), items: [446, 451], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 40), fp: EncodedCountingMonoid(4, SumMonoid(98)) }, Fingerprint { range: Range(40, 68), fp: EncodedCountingMonoid(3, SumMonoid(133)) }, Fingerprint { range: Range(68, 95), fp: EncodedCountingMonoid(3, SumMonoid(250)) }, Fingerprint { range: Range(118, 154), fp: EncodedCountingMonoid(3, SumMonoid(384)) }, Fingerprint { range: Range(154, 191), fp: EncodedCountingMonoid(3, SumMonoid(506)) }, Fingerprint { range: Range(191, 234), fp: EncodedCountingMonoid(3, SumMonoid(646)) }, Fingerprint { range: Range(259, 317), fp: EncodedCountingMonoid(4, SumMonoid(1160)) }, Fingerprint { range: Range(317, 365), fp: EncodedCountingMonoid(4, SumMonoid(1311)) }, Fingerprint { range: Range(386, 418), fp: EncodedCountingMonoid(4, SumMonoid(1583)) }, Fingerprint { range: Range(418, 446), fp: EncodedCountingMonoid(4, SumMonoid(1708)) }, Fingerprint { range: Range(453, 489), fp: EncodedCountingMonoid(3, SumMonoid(1400)) }, Fingerprint { range: Range(489, 532), fp: EncodedCountingMonoid(3, SumMonoid(1516)) }, Fingerprint { range: Range(587, 621), fp: EncodedCountingMonoid(4, SumMonoid(2385)) }, Fingerprint { range: Range(621, 634), fp: EncodedCountingMonoid(3, SumMonoid(1880)) }, Fingerprint { range: Range(675, 768), fp: EncodedCountingMonoid(4, SumMonoid(2769)) }, Fingerprint { range: Range(768, 794), fp: EncodedCountingMonoid(4, SumMonoid(3132)) }, Fingerprint { range: Range(824, 873), fp: EncodedCountingMonoid(6, SumMonoid(5101)) }, Fingerprint { range: Range(873, 922), fp: EncodedCountingMonoid(6, SumMonoid(5363)) }], item_sets: [ItemSet { range: Range(446, 453), items: [], want_response: false }, ItemSet { range: Range(95, 118), items: [95, 101], want_response: true }, ItemSet { range: Range(234, 259), items: [234, 242], want_response: true }, ItemSet { range: Range(365, 386), items: [367], want_response: true }, ItemSet { range: Range(532, 587), items: [540, 564], want_response: true }, ItemSet { range: Range(634, 675), items: [644], want_response: true }, ItemSet { range: Range(794, 810), items: [800, 801], want_response: true }, ItemSet { range: Range(810, 824), items: [810, 817], want_response: true }, ItemSet { range: Range(922, 976), items: [], want_response: true }], wants: [446, 451], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(191, 214), fp: EncodedCountingMonoid(3, SumMonoid(579)) }, Fingerprint { range: Range(259, 309), fp: EncodedCountingMonoid(3, SumMonoid(801)) }, Fingerprint { range: Range(453, 472), fp: EncodedCountingMonoid(3, SumMonoid(1376)) }, Fingerprint { range: Range(587, 611), fp: EncodedCountingMonoid(3, SumMonoid(1789)) }], item_sets: [ItemSet { range: Range(95, 118), items: [97, 105], want_response: false }, ItemSet { range: Range(234, 259), items: [247], want_response: false }, ItemSet { range: Range(365, 386), items: [365, 375, 377, 378, 383, 384], want_response: false }, ItemSet { range: Range(532, 587), items: [532, 546, 551, 552, 584, 585], want_response: false }, ItemSet { range: Range(634, 675), items: [634, 636, 643, 646, 669], want_response: false }, ItemSet { range: Range(794, 810), items: [794, 804, 806, 807], want_response: false }, ItemSet { range: Range(810, 824), items: [810, 821], want_response: false }, ItemSet { range: Range(922, 976), items: [922, 952, 963, 964, 975], want_response: false }, ItemSet { range: Range(1, 40), items: [1, 29], want_response: true }, ItemSet { range: Range(40, 68), items: [43, 65], want_response: true }, ItemSet { range: Range(68, 95), items: [68], want_response: true }, ItemSet { range: Range(118, 135), items: [128, 132], want_response: true }, ItemSet { range: Range(135, 154), items: [135], want_response: true }, ItemSet { range: Range(154, 176), items: [158, 162], want_response: true }, ItemSet { range: Range(176, 191), items: [176], want_response: true }, ItemSet { range: Range(214, 234), items: [214, 224], want_response: true }, ItemSet { range: Range(309, 317), items: [309, 310], want_response: true }, ItemSet { range: Range(317, 365), items: [318, 334], want_response: true }, ItemSet { range: Range(386, 418), items: [404, 417], want_response: true }, ItemSet { range: Range(418, 446), items: [441], want_response: true }, ItemSet { range: Range(472, 489), items: [472, 477], want_response: true }, ItemSet { range: Range(489, 532), items: [520, 525], want_response: true }, ItemSet { range: Range(611, 621), items: [611, 619], want_response: true }, ItemSet { range: Range(621, 634), items: [628], want_response: true }, ItemSet { range: Range(675, 729), items: [675, 716], want_response: true }, ItemSet { range: Range(729, 768), items: [729, 760], want_response: true }, ItemSet { range: Range(768, 793), items: [779, 792], want_response: true }, ItemSet { range: Range(793, 794), items: [793], want_response: true }, ItemSet { range: Range(824, 851), items: [832, 841], want_response: true }, ItemSet { range: Range(851, 873), items: [851, 856], want_response: true }, ItemSet { range: Range(873, 922), items: [881, 894], want_response: true }], wants: [95, 101, 234, 242, 367, 540, 564, 644, 800, 801, 817], provide: [(446, true), (451, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 40), items: [16, 18, 25, 39], want_response: false }, ItemSet { range: Range(40, 68), items: [40, 42, 51], want_response: false }, ItemSet { range: Range(68, 95), items: [82, 83, 85], want_response: false }, ItemSet { range: Range(118, 135), items: [118, 122], want_response: false }, ItemSet { range: Range(135, 154), items: [144], want_response: false }, ItemSet { range: Range(154, 176), items: [154, 164], want_response: false }, ItemSet { range: Range(176, 191), items: [188], want_response: false }, ItemSet { range: Range(214, 234), items: [216, 229], want_response: false }, ItemSet { range: Range(309, 317), items: [313], want_response: false }, ItemSet { range: Range(317, 365), items: [317, 320, 324, 350], want_response: false }, ItemSet { range: Range(386, 418), items: [386, 393, 399, 405], want_response: false }, ItemSet { range: Range(418, 446), items: [418, 423, 425, 442], want_response: false }, ItemSet { range: Range(472, 489), items: [477], want_response: false }, ItemSet { range: Range(489, 532), items: [489, 498, 529], want_response: false }, ItemSet { range: Range(611, 621), items: [], want_response: false }, ItemSet { range: Range(621, 634), items: [621, 626, 633], want_response: false }, ItemSet { range: Range(675, 729), items: [685, 688, 695, 701], want_response: false }, ItemSet { range: Range(729, 768), items: [], want_response: false }, ItemSet { range: Range(768, 793), items: [768, 787, 788, 789], want_response: false }, ItemSet { range: Range(793, 794), items: [], want_response: false }, ItemSet { range: Range(824, 851), items: [824, 848, 850], want_response: false }, ItemSet { range: Range(851, 873), items: [851, 859, 869], want_response: false }, ItemSet { range: Range(873, 922), items: [873, 877, 895, 899, 905, 914], want_response: false }, ItemSet { range: Range(191, 214), items: [201], want_response: true }, ItemSet { range: Range(259, 298), items: [261, 288], want_response: true }, ItemSet { range: Range(298, 309), items: [298], want_response: true }, ItemSet { range: Range(453, 472), items: [453, 470], want_response: true }, ItemSet { range: Range(587, 596), items: [587, 593], want_response: true }, ItemSet { range: Range(596, 611), items: [596, 609], want_response: true }], wants: [97, 105, 247, 365, 375, 377, 378, 383, 384, 532, 546, 551, 552, 584, 585, 634, 636, 643, 646, 669, 794, 804, 806, 807, 821, 922, 952, 963, 964, 975, 1, 29, 43, 65, 68, 128, 132, 135, 158, 162, 176, 214, 224, 309, 310, 318, 334, 404, 417, 441, 472, 520, 525, 611, 619, 628, 675, 716, 729, 760, 779, 792, 793, 832, 841, 856, 881, 894], provide: [(95, true), (101, true), (234, true), (242, true), (367, true), (540, true), (564, true), (644, true), (800, true), (801, true), (817, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(191, 214), items: [191, 192, 196], want_response: false }, ItemSet { range: Range(259, 298), items: [259, 263, 279], want_response: false }, ItemSet { range: Range(298, 309), items: [], want_response: false }, ItemSet { range: Range(453, 472), items: [455, 456, 465], want_response: false }, ItemSet { range: Range(587, 596), items: [591], want_response: false }, ItemSet { range: Range(596, 611), items: [596, 602], want_response: false }], wants: [16, 18, 25, 39, 40, 42, 51, 82, 83, 85, 118, 122, 144, 154, 164, 188, 216, 229, 313, 317, 320, 324, 350, 386, 393, 399, 405, 418, 423, 425, 442, 489, 498, 529, 621, 626, 633, 685, 688, 695, 701, 768, 787, 788, 789, 824, 848, 850, 859, 869, 873, 877, 895, 899, 905, 914, 201, 261, 288, 298, 453, 470, 587, 593, 609], provide: [(97, true), (105, true), (247, true), (365, true), (375, true), (377, true), (378, true), (383, true), (384, true), (532, true), (546, true), (551, true), (552, true), (584, true), (585, true), (634, true), (636, true), (643, true), (646, true), (669, true), (794, true), (804, true), (806, true), (807, true), (821, true), (922, true), (952, true), (963, true), (964, true), (975, true), (1, true), (29, true), (43, true), (65, true), (68, true), (128, true), (132, true), (135, true), (158, true), (162, true), (176, true), (214, true), (224, true), (309, true), (310, true), (318, true), (334, true), (404, true), (417, true), (441, true), (472, true), (520, true), (525, true), (611, true), (619, true), (628, true), (675, true), (716, true), (729, true), (760, true), (779, true), (792, true), (793, true), (832, true), (841, true), (856, true), (881, true), (894, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [191, 192, 196, 259, 263, 279, 455, 456, 465, 591, 602], provide: [(16, true), (18, true), (25, true), (39, true), (40, true), (42, true), (51, true), (82, true), (83, true), (85, true), (118, true), (122, true), (144, true), (154, true), (164, true), (188, true), (216, true), (229, true), (313, true), (317, true), (320, true), (324, true), (350, true), (386, true), (393, true), (399, true), (405, true), (418, true), (423, true), (425, true), (442, true), (489, true), (498, true), (529, true), (621, true), (626, true), (633, true), (685, true), (688, true), (695, true), (701, true), (768, true), (787, true), (788, true), (789, true), (824, true), (848, true), (850, true), (859, true), (869, true), (873, true), (877, true), (895, true), (899, true), (905, true), (914, true), (201, true), (261, true), (288, true), (298, true), (453, true), (470, true), (587, true), (593, true), (609, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(191, true), (192, true), (196, true), (259, true), (263, true), (279, true), (455, true), (456, true), (465, true), (591, true), (602, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 29, 43, 65, 68, 97, 105, 128, 132, 135, 158, 162, 176, 191, 192, 196, 214, 224, 247, 259, 263, 279, 309, 310, 318, 334, 365, 375, 377, 378, 383, 384, 404, 417, 441, 446, 451, 455, 456, 465, 472, 477, 520, 525, 532, 546, 551, 552, 584, 585, 591, 596, 602, 611, 619, 628, 634, 636, 643, 646, 669, 675, 716, 729, 760, 779, 792, 793, 794, 804, 806, 807, 810, 821, 832, 841, 851, 856, 881, 894, 922, 952, 963, 964, 975} + [986, 995, 95, 101, 234, 242, 367, 540, 564, 644, 800, 801, 817, 16, 18, 25, 39, 40, 42, 51, 82, 83, 85, 118, 122, 144, 154, 164, 188, 216, 229, 313, 317, 320, 324, 350, 386, 393, 399, 405, 418, 423, 425, 442, 489, 498, 529, 621, 626, 633, 685, 688, 695, 701, 768, 787, 788, 789, 824, 848, 850, 859, 869, 873, 877, 895, 899, 905, 914, 201, 261, 288, 298, 453, 470, 587, 593, 609]
[INFO] [stdout] b all: {16, 18, 25, 39, 40, 42, 51, 82, 83, 85, 95, 101, 118, 122, 144, 154, 164, 188, 201, 216, 229, 234, 242, 261, 288, 298, 313, 317, 320, 324, 350, 367, 386, 393, 399, 405, 418, 423, 425, 442, 453, 470, 477, 489, 498, 529, 540, 564, 587, 593, 596, 609, 621, 626, 633, 644, 685, 688, 695, 701, 768, 787, 788, 789, 800, 801, 810, 817, 824, 848, 850, 851, 859, 869, 873, 877, 895, 899, 905, 914, 986, 995} + [446, 451, 97, 105, 247, 365, 375, 377, 378, 383, 384, 532, 546, 551, 552, 584, 585, 634, 636, 643, 646, 669, 794, 804, 806, 807, 821, 922, 952, 963, 964, 975, 1, 29, 43, 65, 68, 128, 132, 135, 158, 162, 176, 214, 224, 309, 310, 318, 334, 404, 417, 441, 472, 520, 525, 611, 619, 628, 675, 716, 729, 760, 779, 792, 793, 832, 841, 856, 881, 894, 191, 192, 196, 259, 263, 279, 455, 456, 465, 591, 602]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 16, 18, 25, 29, 39, 40, 42, 43, 51, 65, 68, 82, 83, 85, 95, 97, 101, 105, 118, 122, 128, 132, 135, 144, 154, 158, 162, 164, 176, 188, 191, 192, 196, 201, 214, 216, 224, 229, 234, 242, 247, 259, 261, 263, 279, 288, 298, 309, 310, 313, 317, 318, 320, 324, 334, 350, 365, 367, 375, 377, 378, 383, 384, 386, 393, 399, 404, 405, 417, 418, 423, 425, 441, 442, 446, 451, 453, 455, 456, 465, 470, 472, 477, 489, 498, 520, 525, 529, 532, 540, 546, 551, 552, 564, 584, 585, 587, 591, 593, 596, 602, 609, 611, 619, 621, 626, 628, 633, 634, 636, 643, 644, 646, 669, 675, 685, 688, 695, 701, 716, 729, 760, 768, 779, 787, 788, 789, 792, 793, 794, 800, 801, 804, 806, 807, 810, 817, 821, 824, 832, 841, 848, 850, 851, 856, 859, 869, 873, 877, 881, 894, 895, 899, 905, 914, 922, 952, 963, 964, 975, 986, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 16, 18, 25, 29, 39, 40, 42, 43, 51, 65, 68, 82, 83, 85, 95, 97, 101, 105, 118, 122, 128, 132, 135, 144, 154, 158, 162, 164, 176, 188, 191, 192, 196, 201, 214, 216, 224, 229, 234, 242, 247, 259, 261, 263, 279, 288, 298, 309, 310, 313, 317, 318, 320, 324, 334, 350, 365, 367, 375, 377, 378, 383, 384, 386, 393, 399, 404, 405, 417, 418, 423, 425, 441, 442, 446, 451, 453, 455, 456, 465, 470, 472, 477, 489, 498, 520, 525, 529, 532, 540, 546, 551, 552, 564, 584, 585, 587, 591, 593, 596, 602, 609, 611, 619, 621, 626, 628, 633, 634, 636, 643, 644, 646, 669, 675, 685, 688, 695, 701, 716, 729, 760, 768, 779, 787, 788, 789, 792, 793, 794, 800, 801, 804, 806, 807, 810, 817, 821, 824, 832, 841, 848, 850, 851, 856, 859, 869, 873, 877, 881, 894, 895, 899, 905, 914, 922, 952, 963, 964, 975, 986, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 16, 18, 25, 29, 39, 40, 42, 43, 51, 65, 68, 82, 83, 85, 95, 97, 101, 105, 118, 122, 128, 132, 135, 144, 154, 158, 162, 164, 176, 188, 191, 192, 196, 201, 214, 216, 224, 229, 234, 242, 247, 259, 261, 263, 279, 288, 298, 309, 310, 313, 317, 318, 320, 324, 334, 350, 365, 367, 375, 377, 378, 383, 384, 386, 393, 399, 404, 405, 417, 418, 423, 425, 441, 442, 446, 451, 453, 455, 456, 465, 470, 472, 477, 489, 498, 520, 525, 529, 532, 540, 546, 551, 552, 564, 584, 585, 587, 591, 593, 596, 602, 609, 611, 619, 621, 626, 628, 633, 634, 636, 643, 644, 646, 669, 675, 685, 688, 695, 701, 716, 729, 760, 768, 779, 787, 788, 789, 792, 793, 794, 800, 801, 804, 806, 807, 810, 817, 821, 824, 832, 841, 848, 850, 851, 856, 859, 869, 873, 877, 881, 894, 895, 899, 905, 914, 922, 952, 963, 964, 975, 986, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {13, 38, 74, 84, 90, 92, 112, 118, 121, 122, 123, 126, 141, 144, 147, 152, 159, 161, 162, 167, 170, 210, 214, 247, 256, 277, 293, 323, 327, 343, 380, 404, 410, 415, 422, 427, 437, 438, 501, 504, 513, 550, 590, 624, 638, 666, 676, 718, 739, 747, 749, 756, 760, 784, 817, 820, 828, 833, 839, 859, 866, 875, 910, 915, 926, 942, 945, 950, 952, 966, 985, 993}
[INFO] [stdout] b items: {8, 26, 28, 60, 64, 80, 111, 153, 155, 193, 202, 224, 229, 245, 246, 295, 317, 364, 379, 393, 396, 399, 401, 402, 426, 438, 453, 455, 482, 502, 516, 536, 561, 564, 574, 577, 594, 642, 644, 674, 690, 702, 728, 734, 742, 747, 769, 790, 831, 835, 846, 848, 851, 854, 860, 867, 868, 899, 900, 917, 919, 921, 975, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 994), fp: EncodedCountingMonoid(72, SumMonoid(35075)) }], item_sets: [ItemSet { range: Range(994, 13), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 564), fp: EncodedCountingMonoid(32, SumMonoid(9731)) }, Fingerprint { range: Range(564, 994), fp: EncodedCountingMonoid(31, SumMonoid(24353)) }], item_sets: [ItemSet { range: Range(994, 13), items: [8], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 210), fp: EncodedCountingMonoid(21, SumMonoid(2516)) }, Fingerprint { range: Range(210, 564), fp: EncodedCountingMonoid(21, SumMonoid(7891)) }, Fingerprint { range: Range(564, 833), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }, Fingerprint { range: Range(833, 994), fp: EncodedCountingMonoid(15, SumMonoid(13756)) }], item_sets: [], wants: [8], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 111), fp: EncodedCountingMonoid(5, SumMonoid(258)) }, Fingerprint { range: Range(111, 210), fp: EncodedCountingMonoid(5, SumMonoid(814)) }, Fingerprint { range: Range(210, 401), fp: EncodedCountingMonoid(11, SumMonoid(3487)) }, Fingerprint { range: Range(401, 564), fp: EncodedCountingMonoid(11, SumMonoid(5172)) }, Fingerprint { range: Range(564, 702), fp: EncodedCountingMonoid(8, SumMonoid(4959)) }, Fingerprint { range: Range(702, 833), fp: EncodedCountingMonoid(8, SumMonoid(6043)) }, Fingerprint { range: Range(833, 899), fp: EncodedCountingMonoid(8, SumMonoid(6829)) }, Fingerprint { range: Range(899, 994), fp: EncodedCountingMonoid(7, SumMonoid(6522)) }], item_sets: [], wants: [], provide: [(8, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 84), fp: EncodedCountingMonoid(3, SumMonoid(125)) }, Fingerprint { range: Range(84, 111), fp: EncodedCountingMonoid(3, SumMonoid(266)) }, Fingerprint { range: Range(111, 147), fp: EncodedCountingMonoid(8, SumMonoid(1007)) }, Fingerprint { range: Range(147, 210), fp: EncodedCountingMonoid(7, SumMonoid(1118)) }, Fingerprint { range: Range(210, 293), fp: EncodedCountingMonoid(5, SumMonoid(1204)) }, Fingerprint { range: Range(293, 401), fp: EncodedCountingMonoid(5, SumMonoid(1666)) }, Fingerprint { range: Range(401, 438), fp: EncodedCountingMonoid(6, SumMonoid(2515)) }, Fingerprint { range: Range(438, 564), fp: EncodedCountingMonoid(5, SumMonoid(2506)) }, Fingerprint { range: Range(564, 666), fp: EncodedCountingMonoid(3, SumMonoid(1852)) }, Fingerprint { range: Range(702, 760), fp: EncodedCountingMonoid(5, SumMonoid(3709)) }, Fingerprint { range: Range(760, 833), fp: EncodedCountingMonoid(5, SumMonoid(4009)) }, Fingerprint { range: Range(833, 866), fp: EncodedCountingMonoid(3, SumMonoid(2531)) }, Fingerprint { range: Range(899, 950), fp: EncodedCountingMonoid(5, SumMonoid(4638)) }, Fingerprint { range: Range(950, 994), fp: EncodedCountingMonoid(5, SumMonoid(4846)) }], item_sets: [ItemSet { range: Range(666, 702), items: [666, 676], want_response: true }, ItemSet { range: Range(866, 899), items: [866, 875], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 64), fp: EncodedCountingMonoid(3, SumMonoid(114)) }, Fingerprint { range: Range(293, 393), fp: EncodedCountingMonoid(4, SumMonoid(1355)) }, Fingerprint { range: Range(393, 401), fp: EncodedCountingMonoid(3, SumMonoid(1188)) }, Fingerprint { range: Range(438, 502), fp: EncodedCountingMonoid(4, SumMonoid(1828)) }, Fingerprint { range: Range(502, 564), fp: EncodedCountingMonoid(4, SumMonoid(2115)) }, Fingerprint { range: Range(564, 594), fp: EncodedCountingMonoid(3, SumMonoid(1715)) }, Fingerprint { range: Range(594, 666), fp: EncodedCountingMonoid(3, SumMonoid(1880)) }, Fingerprint { range: Range(702, 742), fp: EncodedCountingMonoid(3, SumMonoid(2164)) }, Fingerprint { range: Range(833, 851), fp: EncodedCountingMonoid(3, SumMonoid(2529)) }, Fingerprint { range: Range(851, 866), fp: EncodedCountingMonoid(3, SumMonoid(2565)) }, Fingerprint { range: Range(899, 919), fp: EncodedCountingMonoid(3, SumMonoid(2716)) }], item_sets: [ItemSet { range: Range(666, 702), items: [674, 690], want_response: false }, ItemSet { range: Range(866, 899), items: [867, 868], want_response: false }, ItemSet { range: Range(64, 84), items: [64, 80], want_response: true }, ItemSet { range: Range(84, 111), items: [], want_response: true }, ItemSet { range: Range(111, 147), items: [111], want_response: true }, ItemSet { range: Range(147, 193), items: [153, 155], want_response: true }, ItemSet { range: Range(193, 210), items: [193, 202], want_response: true }, ItemSet { range: Range(210, 245), items: [224, 229], want_response: true }, ItemSet { range: Range(245, 293), items: [245, 246], want_response: true }, ItemSet { range: Range(401, 426), items: [401, 402], want_response: true }, ItemSet { range: Range(426, 438), items: [426], want_response: true }, ItemSet { range: Range(742, 760), items: [742, 747], want_response: true }, ItemSet { range: Range(760, 831), items: [769, 790], want_response: true }, ItemSet { range: Range(831, 833), items: [831], want_response: true }, ItemSet { range: Range(919, 950), items: [919, 921], want_response: true }, ItemSet { range: Range(950, 994), items: [975, 991], want_response: true }], wants: [666, 676, 866, 875], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(293, 343), fp: EncodedCountingMonoid(3, SumMonoid(943)) }], item_sets: [ItemSet { range: Range(64, 84), items: [74], want_response: false }, ItemSet { range: Range(84, 111), items: [84, 90, 92], want_response: false }, ItemSet { range: Range(111, 147), items: [112, 118, 121, 122, 123, 126, 141, 144], want_response: false }, ItemSet { range: Range(147, 193), items: [147, 152, 159, 161, 162, 167, 170], want_response: false }, ItemSet { range: Range(193, 210), items: [], want_response: false }, ItemSet { range: Range(210, 245), items: [210, 214], want_response: false }, ItemSet { range: Range(245, 293), items: [247, 256, 277], want_response: false }, ItemSet { range: Range(401, 426), items: [404, 410, 415, 422], want_response: false }, ItemSet { range: Range(426, 438), items: [427, 437], want_response: false }, ItemSet { range: Range(742, 760), items: [747, 749, 756], want_response: false }, ItemSet { range: Range(760, 831), items: [760, 784, 817, 820, 828], want_response: false }, ItemSet { range: Range(831, 833), items: [], want_response: false }, ItemSet { range: Range(919, 950), items: [926, 942, 945], want_response: false }, ItemSet { range: Range(950, 994), items: [950, 952, 966, 985, 993], want_response: false }, ItemSet { range: Range(13, 64), items: [13, 38], want_response: true }, ItemSet { range: Range(343, 393), items: [343, 380], want_response: true }, ItemSet { range: Range(393, 401), items: [], want_response: true }, ItemSet { range: Range(438, 502), items: [438, 501], want_response: true }, ItemSet { range: Range(502, 550), items: [504, 513], want_response: true }, ItemSet { range: Range(550, 564), items: [550], want_response: true }, ItemSet { range: Range(564, 594), items: [590], want_response: true }, ItemSet { range: Range(594, 666), items: [624, 638], want_response: true }, ItemSet { range: Range(702, 742), items: [718, 739], want_response: true }, ItemSet { range: Range(833, 851), items: [833, 839], want_response: true }, ItemSet { range: Range(851, 866), items: [859], want_response: true }, ItemSet { range: Range(899, 919), items: [910, 915], want_response: true }], wants: [674, 690, 867, 868, 64, 80, 111, 153, 155, 193, 202, 224, 229, 245, 246, 401, 402, 426, 742, 769, 790, 831, 919, 921, 975, 991], provide: [(666, true), (676, true), (866, true), (875, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(13, 64), items: [26, 28, 60], want_response: false }, ItemSet { range: Range(343, 393), items: [364, 379], want_response: false }, ItemSet { range: Range(393, 401), items: [393, 396, 399], want_response: false }, ItemSet { range: Range(438, 502), items: [438, 453, 455, 482], want_response: false }, ItemSet { range: Range(502, 550), items: [502, 516, 536], want_response: false }, ItemSet { range: Range(550, 564), items: [561], want_response: false }, ItemSet { range: Range(564, 594), items: [564, 574, 577], want_response: false }, ItemSet { range: Range(594, 666), items: [594, 642, 644], want_response: false }, ItemSet { range: Range(702, 742), items: [702, 728, 734], want_response: false }, ItemSet { range: Range(833, 851), items: [835, 846, 848], want_response: false }, ItemSet { range: Range(851, 866), items: [851, 854, 860], want_response: false }, ItemSet { range: Range(899, 919), items: [899, 900, 917], want_response: false }, ItemSet { range: Range(293, 343), items: [295, 317], want_response: true }], wants: [74, 84, 90, 92, 112, 118, 121, 122, 123, 126, 141, 144, 147, 152, 159, 161, 162, 167, 170, 210, 214, 247, 256, 277, 404, 410, 415, 422, 427, 437, 749, 756, 760, 784, 817, 820, 828, 926, 942, 945, 950, 952, 966, 985, 993, 13, 38, 343, 380, 501, 504, 513, 550, 590, 624, 638, 718, 739, 833, 839, 859, 910, 915], provide: [(674, true), (690, true), (867, true), (868, true), (64, true), (80, true), (111, true), (153, true), (155, true), (193, true), (202, true), (224, true), (229, true), (245, true), (246, true), (401, true), (402, true), (426, true), (742, true), (769, true), (790, true), (831, true), (919, true), (921, true), (975, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(293, 343), items: [293, 323, 327], want_response: false }], wants: [26, 28, 60, 364, 379, 393, 396, 399, 453, 455, 482, 502, 516, 536, 561, 564, 574, 577, 594, 642, 644, 702, 728, 734, 835, 846, 848, 851, 854, 860, 899, 900, 917, 295, 317], provide: [(74, true), (84, true), (90, true), (92, true), (112, true), (118, true), (121, true), (122, true), (123, true), (126, true), (141, true), (144, true), (147, true), (152, true), (159, true), (161, true), (162, true), (167, true), (170, true), (210, true), (214, true), (247, true), (256, true), (277, true), (404, true), (410, true), (415, true), (422, true), (427, true), (437, true), (749, true), (756, true), (760, true), (784, true), (817, true), (820, true), (828, true), (926, true), (942, true), (945, true), (950, true), (952, true), (966, true), (985, true), (993, true), (13, true), (38, true), (343, true), (380, true), (501, true), (504, true), (513, true), (550, true), (590, true), (624, true), (638, true), (718, true), (739, true), (833, true), (839, true), (859, true), (910, true), (915, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [293, 323, 327], provide: [(26, true), (28, true), (60, true), (364, true), (379, true), (393, true), (396, true), (399, true), (453, true), (455, true), (482, true), (502, true), (516, true), (536, true), (561, true), (564, true), (574, true), (577, true), (594, true), (642, true), (644, true), (702, true), (728, true), (734, true), (835, true), (846, true), (848, true), (851, true), (854, true), (860, true), (899, true), (900, true), (917, true), (295, true), (317, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(293, true), (323, true), (327, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {13, 38, 74, 84, 90, 92, 112, 118, 121, 122, 123, 126, 141, 144, 147, 152, 159, 161, 162, 167, 170, 210, 214, 247, 256, 277, 293, 323, 327, 343, 380, 404, 410, 415, 422, 427, 437, 438, 501, 504, 513, 550, 590, 624, 638, 666, 676, 718, 739, 747, 749, 756, 760, 784, 817, 820, 828, 833, 839, 859, 866, 875, 910, 915, 926, 942, 945, 950, 952, 966, 985, 993} + [8, 674, 690, 867, 868, 64, 80, 111, 153, 155, 193, 202, 224, 229, 245, 246, 401, 402, 426, 742, 769, 790, 831, 919, 921, 975, 991, 26, 28, 60, 364, 379, 393, 396, 399, 453, 455, 482, 502, 516, 536, 561, 564, 574, 577, 594, 642, 644, 702, 728, 734, 835, 846, 848, 851, 854, 860, 899, 900, 917, 295, 317]
[INFO] [stdout] b all: {8, 26, 28, 60, 64, 80, 111, 153, 155, 193, 202, 224, 229, 245, 246, 295, 317, 364, 379, 393, 396, 399, 401, 402, 426, 438, 453, 455, 482, 502, 516, 536, 561, 564, 574, 577, 594, 642, 644, 674, 690, 702, 728, 734, 742, 747, 769, 790, 831, 835, 846, 848, 851, 854, 860, 867, 868, 899, 900, 917, 919, 921, 975, 991} + [666, 676, 866, 875, 74, 84, 90, 92, 112, 118, 121, 122, 123, 126, 141, 144, 147, 152, 159, 161, 162, 167, 170, 210, 214, 247, 256, 277, 404, 410, 415, 422, 427, 437, 749, 756, 760, 784, 817, 820, 828, 926, 942, 945, 950, 952, 966, 985, 993, 13, 38, 343, 380, 501, 504, 513, 550, 590, 624, 638, 718, 739, 833, 839, 859, 910, 915, 293, 323, 327]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 13, 26, 28, 38, 60, 64, 74, 80, 84, 90, 92, 111, 112, 118, 121, 122, 123, 126, 141, 144, 147, 152, 153, 155, 159, 161, 162, 167, 170, 193, 202, 210, 214, 224, 229, 245, 246, 247, 256, 277, 293, 295, 317, 323, 327, 343, 364, 379, 380, 393, 396, 399, 401, 402, 404, 410, 415, 422, 426, 427, 437, 438, 453, 455, 482, 501, 502, 504, 513, 516, 536, 550, 561, 564, 574, 577, 590, 594, 624, 638, 642, 644, 666, 674, 676, 690, 702, 718, 728, 734, 739, 742, 747, 749, 756, 760, 769, 784, 790, 817, 820, 828, 831, 833, 835, 839, 846, 848, 851, 854, 859, 860, 866, 867, 868, 875, 899, 900, 910, 915, 917, 919, 921, 926, 942, 945, 950, 952, 966, 975, 985, 991, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 13, 26, 28, 38, 60, 64, 74, 80, 84, 90, 92, 111, 112, 118, 121, 122, 123, 126, 141, 144, 147, 152, 153, 155, 159, 161, 162, 167, 170, 193, 202, 210, 214, 224, 229, 245, 246, 247, 256, 277, 293, 295, 317, 323, 327, 343, 364, 379, 380, 393, 396, 399, 401, 402, 404, 410, 415, 422, 426, 427, 437, 438, 453, 455, 482, 501, 502, 504, 513, 516, 536, 550, 561, 564, 574, 577, 590, 594, 624, 638, 642, 644, 666, 674, 676, 690, 702, 718, 728, 734, 739, 742, 747, 749, 756, 760, 769, 784, 790, 817, 820, 828, 831, 833, 835, 839, 846, 848, 851, 854, 859, 860, 866, 867, 868, 875, 899, 900, 910, 915, 917, 919, 921, 926, 942, 945, 950, 952, 966, 975, 985, 991, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 13, 26, 28, 38, 60, 64, 74, 80, 84, 90, 92, 111, 112, 118, 121, 122, 123, 126, 141, 144, 147, 152, 153, 155, 159, 161, 162, 167, 170, 193, 202, 210, 214, 224, 229, 245, 246, 247, 256, 277, 293, 295, 317, 323, 327, 343, 364, 379, 380, 393, 396, 399, 401, 402, 404, 410, 415, 422, 426, 427, 437, 438, 453, 455, 482, 501, 502, 504, 513, 516, 536, 550, 561, 564, 574, 577, 590, 594, 624, 638, 642, 644, 666, 674, 676, 690, 702, 718, 728, 734, 739, 742, 747, 749, 756, 760, 769, 784, 790, 817, 820, 828, 831, 833, 835, 839, 846, 848, 851, 854, 859, 860, 866, 867, 868, 875, 899, 900, 910, 915, 917, 919, 921, 926, 942, 945, 950, 952, 966, 975, 985, 991, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {20, 116, 128, 152, 175, 234, 256, 295, 334, 374, 382, 386, 441, 521, 537, 550, 555, 582, 611, 667, 679, 683, 705, 745, 845, 861, 881, 883, 917, 935, 956, 967}
[INFO] [stdout] b items: {32, 33, 57, 79, 113, 114, 122, 136, 147, 161, 166, 170, 197, 198, 218, 244, 246, 268, 277, 279, 299, 300, 373, 433, 435, 457, 465, 483, 505, 511, 549, 590, 600, 644, 675, 691, 707, 718, 727, 734, 753, 769, 783, 802, 809, 853, 858, 861, 864, 873, 888, 889, 905, 916, 938, 947}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(20, 968), fp: EncodedCountingMonoid(32, SumMonoid(17373)) }], item_sets: [ItemSet { range: Range(968, 20), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(20, 505), fp: EncodedCountingMonoid(28, SumMonoid(6502)) }, Fingerprint { range: Range(505, 968), fp: EncodedCountingMonoid(28, SumMonoid(21359)) }], item_sets: [ItemSet { range: Range(968, 20), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(20, 295), fp: EncodedCountingMonoid(7, SumMonoid(1081)) }, Fingerprint { range: Range(295, 505), fp: EncodedCountingMonoid(6, SumMonoid(2212)) }, Fingerprint { range: Range(505, 745), fp: EncodedCountingMonoid(10, SumMonoid(6090)) }, Fingerprint { range: Range(745, 968), fp: EncodedCountingMonoid(9, SumMonoid(7990)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(20, 166), fp: EncodedCountingMonoid(10, SumMonoid(994)) }, Fingerprint { range: Range(166, 295), fp: EncodedCountingMonoid(10, SumMonoid(2263)) }, Fingerprint { range: Range(295, 435), fp: EncodedCountingMonoid(4, SumMonoid(1405)) }, Fingerprint { range: Range(435, 505), fp: EncodedCountingMonoid(4, SumMonoid(1840)) }, Fingerprint { range: Range(505, 675), fp: EncodedCountingMonoid(6, SumMonoid(3399)) }, Fingerprint { range: Range(675, 745), fp: EncodedCountingMonoid(6, SumMonoid(4252)) }, Fingerprint { range: Range(745, 864), fp: EncodedCountingMonoid(8, SumMonoid(6488)) }, Fingerprint { range: Range(864, 968), fp: EncodedCountingMonoid(8, SumMonoid(7220)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(295, 382), fp: EncodedCountingMonoid(3, SumMonoid(1003)) }, Fingerprint { range: Range(505, 582), fp: EncodedCountingMonoid(4, SumMonoid(2163)) }, Fingerprint { range: Range(582, 675), fp: EncodedCountingMonoid(3, SumMonoid(1860)) }, Fingerprint { range: Range(864, 935), fp: EncodedCountingMonoid(3, SumMonoid(2681)) }, Fingerprint { range: Range(935, 968), fp: EncodedCountingMonoid(3, SumMonoid(2858)) }], item_sets: [ItemSet { range: Range(20, 128), items: [20, 116], want_response: true }, ItemSet { range: Range(128, 166), items: [128, 152], want_response: true }, ItemSet { range: Range(166, 256), items: [175, 234], want_response: true }, ItemSet { range: Range(256, 295), items: [256], want_response: true }, ItemSet { range: Range(382, 435), items: [382, 386], want_response: true }, ItemSet { range: Range(435, 505), items: [441], want_response: true }, ItemSet { range: Range(675, 705), items: [679, 683], want_response: true }, ItemSet { range: Range(705, 745), items: [705], want_response: true }, ItemSet { range: Range(745, 861), items: [745, 845], want_response: true }, ItemSet { range: Range(861, 864), items: [861], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(864, 889), fp: EncodedCountingMonoid(3, SumMonoid(2625)) }, Fingerprint { range: Range(889, 935), fp: EncodedCountingMonoid(3, SumMonoid(2710)) }], item_sets: [ItemSet { range: Range(20, 128), items: [32, 33, 57, 79, 113, 114, 122], want_response: false }, ItemSet { range: Range(128, 166), items: [136, 147, 161], want_response: false }, ItemSet { range: Range(166, 256), items: [166, 170, 197, 198, 218, 244, 246], want_response: false }, ItemSet { range: Range(256, 295), items: [268, 277, 279], want_response: false }, ItemSet { range: Range(382, 435), items: [433], want_response: false }, ItemSet { range: Range(435, 505), items: [435, 457, 465, 483], want_response: false }, ItemSet { range: Range(675, 705), items: [675, 691], want_response: false }, ItemSet { range: Range(705, 745), items: [707, 718, 727, 734], want_response: false }, ItemSet { range: Range(745, 861), items: [753, 769, 783, 802, 809, 853, 858], want_response: false }, ItemSet { range: Range(861, 864), items: [861], want_response: false }, ItemSet { range: Range(295, 373), items: [299, 300], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(505, 549), items: [505, 511], want_response: true }, ItemSet { range: Range(549, 582), items: [549], want_response: true }, ItemSet { range: Range(582, 644), items: [590, 600], want_response: true }, ItemSet { range: Range(644, 675), items: [644], want_response: true }, ItemSet { range: Range(935, 968), items: [938, 947], want_response: true }], wants: [20, 116, 128, 152, 175, 234, 256, 382, 386, 441, 679, 683, 705, 745, 845], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(295, 373), items: [295, 334], want_response: false }, ItemSet { range: Range(373, 382), items: [374], want_response: false }, ItemSet { range: Range(505, 549), items: [521, 537], want_response: false }, ItemSet { range: Range(549, 582), items: [550, 555], want_response: false }, ItemSet { range: Range(582, 644), items: [582, 611], want_response: false }, ItemSet { range: Range(644, 675), items: [667], want_response: false }, ItemSet { range: Range(935, 968), items: [935, 956, 967], want_response: false }, ItemSet { range: Range(864, 889), items: [881, 883], want_response: true }, ItemSet { range: Range(889, 935), items: [917], want_response: true }], wants: [32, 33, 57, 79, 113, 114, 122, 136, 147, 161, 166, 170, 197, 198, 218, 244, 246, 268, 277, 279, 433, 435, 457, 465, 483, 675, 691, 707, 718, 727, 734, 753, 769, 783, 802, 809, 853, 858, 299, 300, 373, 505, 511, 549, 590, 600, 644, 938, 947], provide: [(20, true), (116, true), (128, true), (152, true), (175, true), (234, true), (256, true), (382, true), (386, true), (441, true), (679, true), (683, true), (705, true), (745, true), (845, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(864, 889), items: [864, 873, 888], want_response: false }, ItemSet { range: Range(889, 935), items: [889, 905, 916], want_response: false }], wants: [295, 334, 374, 521, 537, 550, 555, 582, 611, 667, 935, 956, 967, 881, 883, 917], provide: [(32, true), (33, true), (57, true), (79, true), (113, true), (114, true), (122, true), (136, true), (147, true), (161, true), (166, true), (170, true), (197, true), (198, true), (218, true), (244, true), (246, true), (268, true), (277, true), (279, true), (433, true), (435, true), (457, true), (465, true), (483, true), (675, true), (691, true), (707, true), (718, true), (727, true), (734, true), (753, true), (769, true), (783, true), (802, true), (809, true), (853, true), (858, true), (299, true), (300, true), (373, true), (505, true), (511, true), (549, true), (590, true), (600, true), (644, true), (938, true), (947, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [864, 873, 888, 889, 905, 916], provide: [(295, true), (334, true), (374, true), (521, true), (537, true), (550, true), (555, true), (582, true), (611, true), (667, true), (935, true), (956, true), (967, true), (881, true), (883, true), (917, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(864, true), (873, true), (888, true), (889, true), (905, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {20, 116, 128, 152, 175, 234, 256, 295, 334, 374, 382, 386, 441, 521, 537, 550, 555, 582, 611, 667, 679, 683, 705, 745, 845, 861, 881, 883, 917, 935, 956, 967} + [32, 33, 57, 79, 113, 114, 122, 136, 147, 161, 166, 170, 197, 198, 218, 244, 246, 268, 277, 279, 433, 435, 457, 465, 483, 675, 691, 707, 718, 727, 734, 753, 769, 783, 802, 809, 853, 858, 299, 300, 373, 505, 511, 549, 590, 600, 644, 938, 947, 864, 873, 888, 889, 905, 916]
[INFO] [stdout] b all: {32, 33, 57, 79, 113, 114, 122, 136, 147, 161, 166, 170, 197, 198, 218, 244, 246, 268, 277, 279, 299, 300, 373, 433, 435, 457, 465, 483, 505, 511, 549, 590, 600, 644, 675, 691, 707, 718, 727, 734, 753, 769, 783, 802, 809, 853, 858, 861, 864, 873, 888, 889, 905, 916, 938, 947} + [20, 116, 128, 152, 175, 234, 256, 382, 386, 441, 679, 683, 705, 745, 845, 295, 334, 374, 521, 537, 550, 555, 582, 611, 667, 935, 956, 967, 881, 883, 917]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [20, 32, 33, 57, 79, 113, 114, 116, 122, 128, 136, 147, 152, 161, 166, 170, 175, 197, 198, 218, 234, 244, 246, 256, 268, 277, 279, 295, 299, 300, 334, 373, 374, 382, 386, 433, 435, 441, 457, 465, 483, 505, 511, 521, 537, 549, 550, 555, 582, 590, 600, 611, 644, 667, 675, 679, 683, 691, 705, 707, 718, 727, 734, 745, 753, 769, 783, 802, 809, 845, 853, 858, 861, 864, 873, 881, 883, 888, 889, 905, 916, 917, 935, 938, 947, 956, 967]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [20, 32, 33, 57, 79, 113, 114, 116, 122, 128, 136, 147, 152, 161, 166, 170, 175, 197, 198, 218, 234, 244, 246, 256, 268, 277, 279, 295, 299, 300, 334, 373, 374, 382, 386, 433, 435, 441, 457, 465, 483, 505, 511, 521, 537, 549, 550, 555, 582, 590, 600, 611, 644, 667, 675, 679, 683, 691, 705, 707, 718, 727, 734, 745, 753, 769, 783, 802, 809, 845, 853, 858, 861, 864, 873, 881, 883, 888, 889, 905, 916, 917, 935, 938, 947, 956, 967], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [20, 32, 33, 57, 79, 113, 114, 116, 122, 128, 136, 147, 152, 161, 166, 170, 175, 197, 198, 218, 234, 244, 246, 256, 268, 277, 279, 295, 299, 300, 334, 373, 374, 382, 386, 433, 435, 441, 457, 465, 483, 505, 511, 521, 537, 549, 550, 555, 582, 590, 600, 611, 644, 667, 675, 679, 683, 691, 705, 707, 718, 727, 734, 745, 753, 769, 783, 802, 809, 845, 853, 858, 861, 864, 873, 881, 883, 888, 889, 905, 916, 917, 935, 938, 947, 956, 967], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {87, 131, 173, 203, 206, 255, 318, 341, 361, 384, 425, 454, 499, 516, 562, 626, 627, 717, 738, 756, 777, 818, 848, 901, 959, 976}
[INFO] [stdout] b items: {8, 48, 57, 63, 85, 93, 100, 111, 133, 136, 147, 152, 166, 198, 215, 222, 228, 233, 240, 262, 265, 273, 274, 294, 301, 304, 344, 353, 372, 382, 435, 443, 451, 460, 486, 521, 552, 558, 564, 577, 586, 587, 678, 724, 727, 742, 745, 770, 771, 774, 796, 798, 800, 818, 821, 852, 853, 861, 864, 875, 878, 881, 900, 929, 933, 938, 941, 943, 963, 978, 979, 986, 992}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(87, 977), fp: EncodedCountingMonoid(26, SumMonoid(13658)) }], item_sets: [ItemSet { range: Range(977, 87), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(87, 558), fp: EncodedCountingMonoid(32, SumMonoid(9146)) }, Fingerprint { range: Range(558, 977), fp: EncodedCountingMonoid(32, SumMonoid(25447)) }], item_sets: [ItemSet { range: Range(977, 87), items: [978, 979, 986, 992, 8, 48, 57, 63, 85], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(87, 341), fp: EncodedCountingMonoid(7, SumMonoid(1373)) }, Fingerprint { range: Range(341, 558), fp: EncodedCountingMonoid(7, SumMonoid(2980)) }, Fingerprint { range: Range(558, 777), fp: EncodedCountingMonoid(6, SumMonoid(4026)) }, Fingerprint { range: Range(777, 977), fp: EncodedCountingMonoid(6, SumMonoid(5279)) }], item_sets: [], wants: [978, 979, 986, 992, 8, 48, 57, 63, 85], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(87, 228), fp: EncodedCountingMonoid(11, SumMonoid(1673)) }, Fingerprint { range: Range(228, 341), fp: EncodedCountingMonoid(10, SumMonoid(2674)) }, Fingerprint { range: Range(341, 451), fp: EncodedCountingMonoid(6, SumMonoid(2329)) }, Fingerprint { range: Range(451, 558), fp: EncodedCountingMonoid(5, SumMonoid(2470)) }, Fingerprint { range: Range(558, 727), fp: EncodedCountingMonoid(7, SumMonoid(4274)) }, Fingerprint { range: Range(727, 777), fp: EncodedCountingMonoid(6, SumMonoid(4529)) }, Fingerprint { range: Range(777, 878), fp: EncodedCountingMonoid(10, SumMonoid(8338)) }, Fingerprint { range: Range(878, 977), fp: EncodedCountingMonoid(9, SumMonoid(8306)) }], item_sets: [], wants: [], provide: [(978, true), (979, true), (986, true), (992, true), (8, true), (48, true), (57, true), (63, true), (85, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(87, 203), fp: EncodedCountingMonoid(3, SumMonoid(391)) }], item_sets: [ItemSet { range: Range(203, 228), items: [203, 206], want_response: true }, ItemSet { range: Range(228, 341), items: [255, 318], want_response: true }, ItemSet { range: Range(341, 384), items: [341, 361], want_response: true }, ItemSet { range: Range(384, 451), items: [384, 425], want_response: true }, ItemSet { range: Range(451, 516), items: [454, 499], want_response: true }, ItemSet { range: Range(516, 558), items: [516], want_response: true }, ItemSet { range: Range(558, 627), items: [562, 626], want_response: true }, ItemSet { range: Range(627, 727), items: [627, 717], want_response: true }, ItemSet { range: Range(727, 777), items: [738, 756], want_response: true }, ItemSet { range: Range(777, 848), items: [777, 818], want_response: true }, ItemSet { range: Range(848, 878), items: [848], want_response: true }, ItemSet { range: Range(878, 976), items: [901, 959], want_response: true }, ItemSet { range: Range(976, 977), items: [976], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(87, 147), fp: EncodedCountingMonoid(5, SumMonoid(573)) }, Fingerprint { range: Range(147, 203), fp: EncodedCountingMonoid(4, SumMonoid(663)) }], item_sets: [ItemSet { range: Range(203, 228), items: [215, 222], want_response: false }, ItemSet { range: Range(228, 341), items: [228, 233, 240, 262, 265, 273, 274, 294, 301, 304], want_response: false }, ItemSet { range: Range(341, 384), items: [344, 353, 372, 382], want_response: false }, ItemSet { range: Range(384, 451), items: [435, 443], want_response: false }, ItemSet { range: Range(451, 516), items: [451, 460, 486], want_response: false }, ItemSet { range: Range(516, 558), items: [521, 552], want_response: false }, ItemSet { range: Range(558, 627), items: [558, 564, 577, 586, 587], want_response: false }, ItemSet { range: Range(627, 727), items: [678, 724], want_response: false }, ItemSet { range: Range(727, 777), items: [727, 742, 745, 770, 771, 774], want_response: false }, ItemSet { range: Range(777, 848), items: [796, 798, 800, 818, 821], want_response: false }, ItemSet { range: Range(848, 878), items: [852, 853, 861, 864, 875], want_response: false }, ItemSet { range: Range(878, 976), items: [878, 881, 900, 929, 933, 938, 941, 943, 963], want_response: false }, ItemSet { range: Range(976, 977), items: [], want_response: false }], wants: [203, 206, 255, 318, 341, 361, 384, 425, 454, 499, 516, 562, 626, 627, 717, 738, 756, 777, 848, 901, 959, 976], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(87, 147), items: [87, 131], want_response: true }, ItemSet { range: Range(147, 203), items: [173], want_response: true }], wants: [215, 222, 228, 233, 240, 262, 265, 273, 274, 294, 301, 304, 344, 353, 372, 382, 435, 443, 451, 460, 486, 521, 552, 558, 564, 577, 586, 587, 678, 724, 727, 742, 745, 770, 771, 774, 796, 798, 800, 821, 852, 853, 861, 864, 875, 878, 881, 900, 929, 933, 938, 941, 943, 963], provide: [(203, true), (206, true), (255, true), (318, true), (341, true), (361, true), (384, true), (425, true), (454, true), (499, true), (516, true), (562, true), (626, true), (627, true), (717, true), (738, true), (756, true), (777, true), (848, true), (901, true), (959, true), (976, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(87, 147), items: [93, 100, 111, 133, 136], want_response: false }, ItemSet { range: Range(147, 203), items: [147, 152, 166, 198], want_response: false }], wants: [87, 131, 173], provide: [(215, true), (222, true), (228, true), (233, true), (240, true), (262, true), (265, true), (273, true), (274, true), (294, true), (301, true), (304, true), (344, true), (353, true), (372, true), (382, true), (435, true), (443, true), (451, true), (460, true), (486, true), (521, true), (552, true), (558, true), (564, true), (577, true), (586, true), (587, true), (678, true), (724, true), (727, true), (742, true), (745, true), (770, true), (771, true), (774, true), (796, true), (798, true), (800, true), (821, true), (852, true), (853, true), (861, true), (864, true), (875, true), (878, true), (881, true), (900, true), (929, true), (933, true), (938, true), (941, true), (943, true), (963, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [93, 100, 111, 133, 136, 147, 152, 166, 198], provide: [(87, true), (131, true), (173, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(93, true), (100, true), (111, true), (133, true), (136, true), (147, true), (152, true), (166, true), (198, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {87, 131, 173, 203, 206, 255, 318, 341, 361, 384, 425, 454, 499, 516, 562, 626, 627, 717, 738, 756, 777, 818, 848, 901, 959, 976} + [978, 979, 986, 992, 8, 48, 57, 63, 85, 215, 222, 228, 233, 240, 262, 265, 273, 274, 294, 301, 304, 344, 353, 372, 382, 435, 443, 451, 460, 486, 521, 552, 558, 564, 577, 586, 587, 678, 724, 727, 742, 745, 770, 771, 774, 796, 798, 800, 821, 852, 853, 861, 864, 875, 878, 881, 900, 929, 933, 938, 941, 943, 963, 93, 100, 111, 133, 136, 147, 152, 166, 198]
[INFO] [stdout] b all: {8, 48, 57, 63, 85, 93, 100, 111, 133, 136, 147, 152, 166, 198, 215, 222, 228, 233, 240, 262, 265, 273, 274, 294, 301, 304, 344, 353, 372, 382, 435, 443, 451, 460, 486, 521, 552, 558, 564, 577, 586, 587, 678, 724, 727, 742, 745, 770, 771, 774, 796, 798, 800, 818, 821, 852, 853, 861, 864, 875, 878, 881, 900, 929, 933, 938, 941, 943, 963, 978, 979, 986, 992} + [203, 206, 255, 318, 341, 361, 384, 425, 454, 499, 516, 562, 626, 627, 717, 738, 756, 777, 848, 901, 959, 976, 87, 131, 173]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 48, 57, 63, 85, 87, 93, 100, 111, 131, 133, 136, 147, 152, 166, 173, 198, 203, 206, 215, 222, 228, 233, 240, 255, 262, 265, 273, 274, 294, 301, 304, 318, 341, 344, 353, 361, 372, 382, 384, 425, 435, 443, 451, 454, 460, 486, 499, 516, 521, 552, 558, 562, 564, 577, 586, 587, 626, 627, 678, 717, 724, 727, 738, 742, 745, 756, 770, 771, 774, 777, 796, 798, 800, 818, 821, 848, 852, 853, 861, 864, 875, 878, 881, 900, 901, 929, 933, 938, 941, 943, 959, 963, 976, 978, 979, 986, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 48, 57, 63, 85, 87, 93, 100, 111, 131, 133, 136, 147, 152, 166, 173, 198, 203, 206, 215, 222, 228, 233, 240, 255, 262, 265, 273, 274, 294, 301, 304, 318, 341, 344, 353, 361, 372, 382, 384, 425, 435, 443, 451, 454, 460, 486, 499, 516, 521, 552, 558, 562, 564, 577, 586, 587, 626, 627, 678, 717, 724, 727, 738, 742, 745, 756, 770, 771, 774, 777, 796, 798, 800, 818, 821, 848, 852, 853, 861, 864, 875, 878, 881, 900, 901, 929, 933, 938, 941, 943, 959, 963, 976, 978, 979, 986, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 48, 57, 63, 85, 87, 93, 100, 111, 131, 133, 136, 147, 152, 166, 173, 198, 203, 206, 215, 222, 228, 233, 240, 255, 262, 265, 273, 274, 294, 301, 304, 318, 341, 344, 353, 361, 372, 382, 384, 425, 435, 443, 451, 454, 460, 486, 499, 516, 521, 552, 558, 562, 564, 577, 586, 587, 626, 627, 678, 717, 724, 727, 738, 742, 745, 756, 770, 771, 774, 777, 796, 798, 800, 818, 821, 848, 852, 853, 861, 864, 875, 878, 881, 900, 901, 929, 933, 938, 941, 943, 959, 963, 976, 978, 979, 986, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {28, 29, 36, 70, 101, 105, 111, 116, 121, 149, 165, 166, 174, 221, 237, 254, 266, 277, 288, 303, 313, 318, 322, 375, 377, 416, 417, 420, 425, 442, 444, 447, 468, 538, 552, 562, 571, 582, 615, 621, 627, 639, 653, 670, 695, 713, 714, 723, 726, 733, 754, 774, 805, 826, 833, 841, 867, 876, 883, 893, 903, 905, 921, 922, 936}
[INFO] [stdout] b items: {5, 31, 43, 47, 55, 114, 149, 157, 162, 175, 202, 221, 232, 253, 263, 271, 316, 319, 356, 383, 385, 406, 407, 409, 417, 418, 425, 432, 453, 466, 467, 475, 483, 490, 497, 530, 539, 547, 571, 579, 581, 584, 609, 643, 657, 691, 695, 697, 704, 707, 722, 725, 730, 737, 740, 742, 775, 779, 792, 794, 813, 815, 826, 836, 842, 848, 853, 866, 910, 918, 932, 933, 948, 956, 958, 962, 970, 973, 979}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(28, 937), fp: EncodedCountingMonoid(65, SumMonoid(32274)) }], item_sets: [ItemSet { range: Range(937, 28), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(28, 547), fp: EncodedCountingMonoid(36, SumMonoid(11448)) }, Fingerprint { range: Range(547, 937), fp: EncodedCountingMonoid(35, SumMonoid(26193)) }], item_sets: [ItemSet { range: Range(937, 28), items: [948, 956, 958, 962, 970, 973, 979, 5], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(28, 277), fp: EncodedCountingMonoid(17, SumMonoid(2349)) }, Fingerprint { range: Range(277, 547), fp: EncodedCountingMonoid(17, SumMonoid(6590)) }, Fingerprint { range: Range(547, 754), fp: EncodedCountingMonoid(16, SumMonoid(10396)) }, Fingerprint { range: Range(754, 937), fp: EncodedCountingMonoid(15, SumMonoid(12939)) }], item_sets: [], wants: [948, 956, 958, 962, 970, 973, 979, 5], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(28, 175), fp: EncodedCountingMonoid(8, SumMonoid(758)) }, Fingerprint { range: Range(175, 277), fp: EncodedCountingMonoid(7, SumMonoid(1617)) }, Fingerprint { range: Range(277, 432), fp: EncodedCountingMonoid(11, SumMonoid(4241)) }, Fingerprint { range: Range(432, 547), fp: EncodedCountingMonoid(10, SumMonoid(4832)) }, Fingerprint { range: Range(547, 697), fp: EncodedCountingMonoid(10, SumMonoid(6157)) }, Fingerprint { range: Range(697, 754), fp: EncodedCountingMonoid(9, SumMonoid(6504)) }, Fingerprint { range: Range(754, 842), fp: EncodedCountingMonoid(8, SumMonoid(6430)) }, Fingerprint { range: Range(842, 937), fp: EncodedCountingMonoid(8, SumMonoid(7102)) }], item_sets: [], wants: [], provide: [(948, true), (956, true), (958, true), (962, true), (970, true), (973, true), (979, true), (5, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(28, 116), fp: EncodedCountingMonoid(7, SumMonoid(480)) }, Fingerprint { range: Range(116, 175), fp: EncodedCountingMonoid(6, SumMonoid(891)) }, Fingerprint { range: Range(277, 375), fp: EncodedCountingMonoid(6, SumMonoid(1821)) }, Fingerprint { range: Range(375, 432), fp: EncodedCountingMonoid(6, SumMonoid(2430)) }, Fingerprint { range: Range(432, 468), fp: EncodedCountingMonoid(3, SumMonoid(1333)) }, Fingerprint { range: Range(547, 627), fp: EncodedCountingMonoid(6, SumMonoid(3503)) }, Fingerprint { range: Range(627, 697), fp: EncodedCountingMonoid(5, SumMonoid(3284)) }, Fingerprint { range: Range(697, 726), fp: EncodedCountingMonoid(3, SumMonoid(2150)) }, Fingerprint { range: Range(754, 826), fp: EncodedCountingMonoid(3, SumMonoid(2333)) }, Fingerprint { range: Range(826, 842), fp: EncodedCountingMonoid(3, SumMonoid(2500)) }, Fingerprint { range: Range(842, 905), fp: EncodedCountingMonoid(5, SumMonoid(4422)) }, Fingerprint { range: Range(905, 937), fp: EncodedCountingMonoid(4, SumMonoid(3684)) }], item_sets: [ItemSet { range: Range(175, 254), items: [221, 237], want_response: true }, ItemSet { range: Range(254, 277), items: [254, 266], want_response: true }, ItemSet { range: Range(468, 547), items: [468, 538], want_response: true }, ItemSet { range: Range(726, 754), items: [726, 733], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(28, 55), fp: EncodedCountingMonoid(3, SumMonoid(121)) }, Fingerprint { range: Range(375, 409), fp: EncodedCountingMonoid(4, SumMonoid(1581)) }, Fingerprint { range: Range(409, 432), fp: EncodedCountingMonoid(4, SumMonoid(1669)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(3, SumMonoid(1697)) }, Fingerprint { range: Range(581, 627), fp: EncodedCountingMonoid(3, SumMonoid(1774)) }, Fingerprint { range: Range(697, 722), fp: EncodedCountingMonoid(3, SumMonoid(2108)) }, Fingerprint { range: Range(754, 794), fp: EncodedCountingMonoid(3, SumMonoid(2346)) }, Fingerprint { range: Range(794, 826), fp: EncodedCountingMonoid(3, SumMonoid(2422)) }], item_sets: [ItemSet { range: Range(175, 254), items: [175, 202, 221, 232, 253], want_response: false }, ItemSet { range: Range(254, 277), items: [263, 271], want_response: false }, ItemSet { range: Range(468, 547), items: [475, 483, 490, 497, 530, 539], want_response: false }, ItemSet { range: Range(726, 754), items: [730, 737, 740, 742], want_response: false }, ItemSet { range: Range(55, 116), items: [55, 114], want_response: true }, ItemSet { range: Range(116, 162), items: [149, 157], want_response: true }, ItemSet { range: Range(162, 175), items: [162], want_response: true }, ItemSet { range: Range(277, 356), items: [316, 319], want_response: true }, ItemSet { range: Range(356, 375), items: [356], want_response: true }, ItemSet { range: Range(432, 466), items: [432, 453], want_response: true }, ItemSet { range: Range(466, 468), items: [466, 467], want_response: true }, ItemSet { range: Range(627, 691), items: [643, 657], want_response: true }, ItemSet { range: Range(691, 697), items: [691, 695], want_response: true }, ItemSet { range: Range(722, 726), items: [722, 725], want_response: true }, ItemSet { range: Range(826, 842), items: [826, 836], want_response: true }, ItemSet { range: Range(842, 853), items: [842, 848], want_response: true }, ItemSet { range: Range(853, 905), items: [853, 866], want_response: true }, ItemSet { range: Range(905, 932), items: [910, 918], want_response: true }, ItemSet { range: Range(932, 937), items: [932, 933], want_response: true }], wants: [237, 254, 266, 468, 538, 726, 733], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(55, 116), items: [70, 101, 105, 111], want_response: false }, ItemSet { range: Range(116, 162), items: [116, 121, 149], want_response: false }, ItemSet { range: Range(162, 175), items: [165, 166, 174], want_response: false }, ItemSet { range: Range(277, 356), items: [277, 288, 303, 313, 318, 322], want_response: false }, ItemSet { range: Range(356, 375), items: [], want_response: false }, ItemSet { range: Range(432, 466), items: [442, 444, 447], want_response: false }, ItemSet { range: Range(466, 468), items: [], want_response: false }, ItemSet { range: Range(627, 691), items: [627, 639, 653, 670], want_response: false }, ItemSet { range: Range(691, 697), items: [695], want_response: false }, ItemSet { range: Range(722, 726), items: [723], want_response: false }, ItemSet { range: Range(826, 842), items: [826, 833, 841], want_response: false }, ItemSet { range: Range(842, 853), items: [], want_response: false }, ItemSet { range: Range(853, 905), items: [867, 876, 883, 893, 903], want_response: false }, ItemSet { range: Range(905, 932), items: [905, 921, 922], want_response: false }, ItemSet { range: Range(932, 937), items: [936], want_response: false }, ItemSet { range: Range(28, 36), items: [28, 29], want_response: true }, ItemSet { range: Range(36, 55), items: [36], want_response: true }, ItemSet { range: Range(375, 409), items: [375, 377], want_response: true }, ItemSet { range: Range(409, 420), items: [416, 417], want_response: true }, ItemSet { range: Range(420, 432), items: [420, 425], want_response: true }, ItemSet { range: Range(547, 571), items: [552, 562], want_response: true }, ItemSet { range: Range(571, 581), items: [571], want_response: true }, ItemSet { range: Range(581, 621), items: [582, 615], want_response: true }, ItemSet { range: Range(621, 627), items: [621], want_response: true }, ItemSet { range: Range(697, 722), items: [713, 714], want_response: true }, ItemSet { range: Range(754, 794), items: [754, 774], want_response: true }, ItemSet { range: Range(794, 826), items: [805], want_response: true }], wants: [175, 202, 232, 253, 263, 271, 475, 483, 490, 497, 530, 539, 730, 737, 740, 742, 55, 114, 157, 162, 316, 319, 356, 432, 453, 466, 467, 643, 657, 691, 722, 725, 836, 842, 848, 853, 866, 910, 918, 932, 933], provide: [(237, true), (254, true), (266, true), (468, true), (538, true), (726, true), (733, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(28, 36), items: [31], want_response: false }, ItemSet { range: Range(36, 55), items: [43, 47], want_response: false }, ItemSet { range: Range(375, 409), items: [383, 385, 406, 407], want_response: false }, ItemSet { range: Range(409, 420), items: [409, 417, 418], want_response: false }, ItemSet { range: Range(420, 432), items: [425], want_response: false }, ItemSet { range: Range(547, 571), items: [547], want_response: false }, ItemSet { range: Range(571, 581), items: [571, 579], want_response: false }, ItemSet { range: Range(581, 621), items: [581, 584, 609], want_response: false }, ItemSet { range: Range(621, 627), items: [], want_response: false }, ItemSet { range: Range(697, 722), items: [697, 704, 707], want_response: false }, ItemSet { range: Range(754, 794), items: [775, 779, 792], want_response: false }, ItemSet { range: Range(794, 826), items: [794, 813, 815], want_response: false }], wants: [70, 101, 105, 111, 116, 121, 165, 166, 174, 277, 288, 303, 313, 318, 322, 442, 444, 447, 627, 639, 653, 670, 723, 833, 841, 867, 876, 883, 893, 903, 905, 921, 922, 936, 28, 29, 36, 375, 377, 416, 420, 552, 562, 582, 615, 621, 713, 714, 754, 774, 805], provide: [(175, true), (202, true), (232, true), (253, true), (263, true), (271, true), (475, true), (483, true), (490, true), (497, true), (530, true), (539, true), (730, true), (737, true), (740, true), (742, true), (55, true), (114, true), (157, true), (162, true), (316, true), (319, true), (356, true), (432, true), (453, true), (466, true), (467, true), (643, true), (657, true), (691, true), (722, true), (725, true), (836, true), (842, true), (848, true), (853, true), (866, true), (910, true), (918, true), (932, true), (933, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 43, 47, 383, 385, 406, 407, 409, 418, 547, 579, 581, 584, 609, 697, 704, 707, 775, 779, 792, 794, 813, 815], provide: [(70, true), (101, true), (105, true), (111, true), (116, true), (121, true), (165, true), (166, true), (174, true), (277, true), (288, true), (303, true), (313, true), (318, true), (322, true), (442, true), (444, true), (447, true), (627, true), (639, true), (653, true), (670, true), (723, true), (833, true), (841, true), (867, true), (876, true), (883, true), (893, true), (903, true), (905, true), (921, true), (922, true), (936, true), (28, true), (29, true), (36, true), (375, true), (377, true), (416, true), (420, true), (552, true), (562, true), (582, true), (615, true), (621, true), (713, true), (714, true), (754, true), (774, true), (805, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (43, true), (47, true), (383, true), (385, true), (406, true), (407, true), (409, true), (418, true), (547, true), (579, true), (581, true), (584, true), (609, true), (697, true), (704, true), (707, true), (775, true), (779, true), (792, true), (794, true), (813, true), (815, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {28, 29, 36, 70, 101, 105, 111, 116, 121, 149, 165, 166, 174, 221, 237, 254, 266, 277, 288, 303, 313, 318, 322, 375, 377, 416, 417, 420, 425, 442, 444, 447, 468, 538, 552, 562, 571, 582, 615, 621, 627, 639, 653, 670, 695, 713, 714, 723, 726, 733, 754, 774, 805, 826, 833, 841, 867, 876, 883, 893, 903, 905, 921, 922, 936} + [948, 956, 958, 962, 970, 973, 979, 5, 175, 202, 232, 253, 263, 271, 475, 483, 490, 497, 530, 539, 730, 737, 740, 742, 55, 114, 157, 162, 316, 319, 356, 432, 453, 466, 467, 643, 657, 691, 722, 725, 836, 842, 848, 853, 866, 910, 918, 932, 933, 31, 43, 47, 383, 385, 406, 407, 409, 418, 547, 579, 581, 584, 609, 697, 704, 707, 775, 779, 792, 794, 813, 815]
[INFO] [stdout] b all: {5, 31, 43, 47, 55, 114, 149, 157, 162, 175, 202, 221, 232, 253, 263, 271, 316, 319, 356, 383, 385, 406, 407, 409, 417, 418, 425, 432, 453, 466, 467, 475, 483, 490, 497, 530, 539, 547, 571, 579, 581, 584, 609, 643, 657, 691, 695, 697, 704, 707, 722, 725, 730, 737, 740, 742, 775, 779, 792, 794, 813, 815, 826, 836, 842, 848, 853, 866, 910, 918, 932, 933, 948, 956, 958, 962, 970, 973, 979} + [237, 254, 266, 468, 538, 726, 733, 70, 101, 105, 111, 116, 121, 165, 166, 174, 277, 288, 303, 313, 318, 322, 442, 444, 447, 627, 639, 653, 670, 723, 833, 841, 867, 876, 883, 893, 903, 905, 921, 922, 936, 28, 29, 36, 375, 377, 416, 420, 552, 562, 582, 615, 621, 713, 714, 754, 774, 805]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 28, 29, 31, 36, 43, 47, 55, 70, 101, 105, 111, 114, 116, 121, 149, 157, 162, 165, 166, 174, 175, 202, 221, 232, 237, 253, 254, 263, 266, 271, 277, 288, 303, 313, 316, 318, 319, 322, 356, 375, 377, 383, 385, 406, 407, 409, 416, 417, 418, 420, 425, 432, 442, 444, 447, 453, 466, 467, 468, 475, 483, 490, 497, 530, 538, 539, 547, 552, 562, 571, 579, 581, 582, 584, 609, 615, 621, 627, 639, 643, 653, 657, 670, 691, 695, 697, 704, 707, 713, 714, 722, 723, 725, 726, 730, 733, 737, 740, 742, 754, 774, 775, 779, 792, 794, 805, 813, 815, 826, 833, 836, 841, 842, 848, 853, 866, 867, 876, 883, 893, 903, 905, 910, 918, 921, 922, 932, 933, 936, 948, 956, 958, 962, 970, 973, 979]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 28, 29, 31, 36, 43, 47, 55, 70, 101, 105, 111, 114, 116, 121, 149, 157, 162, 165, 166, 174, 175, 202, 221, 232, 237, 253, 254, 263, 266, 271, 277, 288, 303, 313, 316, 318, 319, 322, 356, 375, 377, 383, 385, 406, 407, 409, 416, 417, 418, 420, 425, 432, 442, 444, 447, 453, 466, 467, 468, 475, 483, 490, 497, 530, 538, 539, 547, 552, 562, 571, 579, 581, 582, 584, 609, 615, 621, 627, 639, 643, 653, 657, 670, 691, 695, 697, 704, 707, 713, 714, 722, 723, 725, 726, 730, 733, 737, 740, 742, 754, 774, 775, 779, 792, 794, 805, 813, 815, 826, 833, 836, 841, 842, 848, 853, 866, 867, 876, 883, 893, 903, 905, 910, 918, 921, 922, 932, 933, 936, 948, 956, 958, 962, 970, 973, 979], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 28, 29, 31, 36, 43, 47, 55, 70, 101, 105, 111, 114, 116, 121, 149, 157, 162, 165, 166, 174, 175, 202, 221, 232, 237, 253, 254, 263, 266, 271, 277, 288, 303, 313, 316, 318, 319, 322, 356, 375, 377, 383, 385, 406, 407, 409, 416, 417, 418, 420, 425, 432, 442, 444, 447, 453, 466, 467, 468, 475, 483, 490, 497, 530, 538, 539, 547, 552, 562, 571, 579, 581, 582, 584, 609, 615, 621, 627, 639, 643, 653, 657, 670, 691, 695, 697, 704, 707, 713, 714, 722, 723, 725, 726, 730, 733, 737, 740, 742, 754, 774, 775, 779, 792, 794, 805, 813, 815, 826, 833, 836, 841, 842, 848, 853, 866, 867, 876, 883, 893, 903, 905, 910, 918, 921, 922, 932, 933, 936, 948, 956, 958, 962, 970, 973, 979], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {119, 259, 400, 739, 749, 939}
[INFO] [stdout] b items: {66, 232, 338, 476, 634, 684, 737, 798}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(119, 940), fp: EncodedCountingMonoid(6, SumMonoid(3205)) }], item_sets: [ItemSet { range: Range(940, 119), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(119, 684), fp: EncodedCountingMonoid(4, SumMonoid(1680)) }, Fingerprint { range: Range(684, 940), fp: EncodedCountingMonoid(3, SumMonoid(2219)) }], item_sets: [ItemSet { range: Range(940, 119), items: [66], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(119, 400), items: [119, 259], want_response: true }, ItemSet { range: Range(400, 684), items: [400], want_response: true }, ItemSet { range: Range(684, 939), items: [739, 749], want_response: true }, ItemSet { range: Range(939, 940), items: [939], want_response: true }], wants: [66], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(119, 400), items: [232, 338], want_response: false }, ItemSet { range: Range(400, 684), items: [476, 634], want_response: false }, ItemSet { range: Range(684, 939), items: [684, 737, 798], want_response: false }, ItemSet { range: Range(939, 940), items: [], want_response: false }], wants: [119, 259, 400, 739, 749, 939], provide: [(66, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [232, 338, 476, 634, 684, 737, 798], provide: [(119, true), (259, true), (400, true), (739, true), (749, true), (939, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(232, true), (338, true), (476, true), (634, true), (684, true), (737, true), (798, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {119, 259, 400, 739, 749, 939} + [66, 232, 338, 476, 634, 684, 737, 798]
[INFO] [stdout] b all: {66, 232, 338, 476, 634, 684, 737, 798} + [119, 259, 400, 739, 749, 939]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [66, 119, 232, 259, 338, 400, 476, 634, 684, 737, 739, 749, 798, 939]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [66, 119, 232, 259, 338, 400, 476, 634, 684, 737, 739, 749, 798, 939], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [66, 119, 232, 259, 338, 400, 476, 634, 684, 737, 739, 749, 798, 939], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 209, 277, 341, 474, 502, 588, 670, 683, 702, 754, 841, 896, 942, 997}
[INFO] [stdout] b items: {35, 51, 59, 63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 216, 218, 221, 226, 235, 252, 275, 277, 296, 301, 311, 357, 374, 384, 395, 424, 446, 451, 453, 467, 472, 503, 505, 522, 548, 552, 556, 625, 626, 641, 654, 703, 707, 714, 716, 735, 743, 744, 760, 771, 797, 824, 852, 894, 898, 947, 968, 970, 976, 979, 983}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 998), fp: EncodedCountingMonoid(15, SumMonoid(8938)) }], item_sets: [ItemSet { range: Range(998, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 453), fp: EncodedCountingMonoid(34, SumMonoid(7851)) }, Fingerprint { range: Range(453, 998), fp: EncodedCountingMonoid(33, SumMonoid(23805)) }], item_sets: [ItemSet { range: Range(998, 62), items: [35, 51, 59], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(453, 754), fp: EncodedCountingMonoid(6, SumMonoid(3619)) }, Fingerprint { range: Range(754, 998), fp: EncodedCountingMonoid(5, SumMonoid(4430)) }], item_sets: [ItemSet { range: Range(62, 277), items: [62, 209], want_response: true }, ItemSet { range: Range(277, 453), items: [277, 341], want_response: true }], wants: [35, 51, 59], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(453, 626), fp: EncodedCountingMonoid(10, SumMonoid(5203)) }, Fingerprint { range: Range(626, 754), fp: EncodedCountingMonoid(10, SumMonoid(6983)) }, Fingerprint { range: Range(754, 947), fp: EncodedCountingMonoid(7, SumMonoid(5796)) }, Fingerprint { range: Range(947, 998), fp: EncodedCountingMonoid(6, SumMonoid(5823)) }], item_sets: [ItemSet { range: Range(62, 277), items: [63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 216, 218, 221, 226, 235, 252, 275], want_response: false }, ItemSet { range: Range(277, 453), items: [277, 296, 301, 311, 357, 374, 384, 395, 424, 446, 451], want_response: false }], wants: [62, 209, 341], provide: [(35, true), (51, true), (59, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(453, 588), items: [474, 502], want_response: true }, ItemSet { range: Range(588, 626), items: [588], want_response: true }, ItemSet { range: Range(626, 702), items: [670, 683], want_response: true }, ItemSet { range: Range(702, 754), items: [702], want_response: true }, ItemSet { range: Range(754, 896), items: [754, 841], want_response: true }, ItemSet { range: Range(896, 947), items: [896, 942], want_response: true }, ItemSet { range: Range(947, 998), items: [997], want_response: true }], wants: [63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 216, 218, 221, 226, 235, 252, 275, 296, 301, 311, 357, 374, 384, 395, 424, 446, 451], provide: [(62, true), (209, true), (341, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(453, 588), items: [453, 467, 472, 503, 505, 522, 548, 552, 556], want_response: false }, ItemSet { range: Range(588, 626), items: [625], want_response: false }, ItemSet { range: Range(626, 702), items: [626, 641, 654], want_response: false }, ItemSet { range: Range(702, 754), items: [703, 707, 714, 716, 735, 743, 744], want_response: false }, ItemSet { range: Range(754, 896), items: [760, 771, 797, 824, 852, 894], want_response: false }, ItemSet { range: Range(896, 947), items: [898], want_response: false }, ItemSet { range: Range(947, 998), items: [947, 968, 970, 976, 979, 983], want_response: false }], wants: [474, 502, 588, 670, 683, 702, 754, 841, 896, 942, 997], provide: [(63, true), (86, true), (87, true), (96, true), (104, true), (113, true), (130, true), (131, true), (143, true), (156, true), (171, true), (172, true), (173, true), (177, true), (182, true), (208, true), (216, true), (218, true), (221, true), (226, true), (235, true), (252, true), (275, true), (296, true), (301, true), (311, true), (357, true), (374, true), (384, true), (395, true), (424, true), (446, true), (451, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [453, 467, 472, 503, 505, 522, 548, 552, 556, 625, 626, 641, 654, 703, 707, 714, 716, 735, 743, 744, 760, 771, 797, 824, 852, 894, 898, 947, 968, 970, 976, 979, 983], provide: [(474, true), (502, true), (588, true), (670, true), (683, true), (702, true), (754, true), (841, true), (896, true), (942, true), (997, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(453, true), (467, true), (472, true), (503, true), (505, true), (522, true), (548, true), (552, true), (556, true), (625, true), (626, true), (641, true), (654, true), (703, true), (707, true), (714, true), (716, true), (735, true), (743, true), (744, true), (760, true), (771, true), (797, true), (824, true), (852, true), (894, true), (898, true), (947, true), (968, true), (970, true), (976, true), (979, true), (983, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 209, 277, 341, 474, 502, 588, 670, 683, 702, 754, 841, 896, 942, 997} + [35, 51, 59, 63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 216, 218, 221, 226, 235, 252, 275, 296, 301, 311, 357, 374, 384, 395, 424, 446, 451, 453, 467, 472, 503, 505, 522, 548, 552, 556, 625, 626, 641, 654, 703, 707, 714, 716, 735, 743, 744, 760, 771, 797, 824, 852, 894, 898, 947, 968, 970, 976, 979, 983]
[INFO] [stdout] b all: {35, 51, 59, 63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 216, 218, 221, 226, 235, 252, 275, 277, 296, 301, 311, 357, 374, 384, 395, 424, 446, 451, 453, 467, 472, 503, 505, 522, 548, 552, 556, 625, 626, 641, 654, 703, 707, 714, 716, 735, 743, 744, 760, 771, 797, 824, 852, 894, 898, 947, 968, 970, 976, 979, 983} + [62, 209, 341, 474, 502, 588, 670, 683, 702, 754, 841, 896, 942, 997]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [35, 51, 59, 62, 63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 209, 216, 218, 221, 226, 235, 252, 275, 277, 296, 301, 311, 341, 357, 374, 384, 395, 424, 446, 451, 453, 467, 472, 474, 502, 503, 505, 522, 548, 552, 556, 588, 625, 626, 641, 654, 670, 683, 702, 703, 707, 714, 716, 735, 743, 744, 754, 760, 771, 797, 824, 841, 852, 894, 896, 898, 942, 947, 968, 970, 976, 979, 983, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [35, 51, 59, 62, 63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 209, 216, 218, 221, 226, 235, 252, 275, 277, 296, 301, 311, 341, 357, 374, 384, 395, 424, 446, 451, 453, 467, 472, 474, 502, 503, 505, 522, 548, 552, 556, 588, 625, 626, 641, 654, 670, 683, 702, 703, 707, 714, 716, 735, 743, 744, 754, 760, 771, 797, 824, 841, 852, 894, 896, 898, 942, 947, 968, 970, 976, 979, 983, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [35, 51, 59, 62, 63, 86, 87, 96, 104, 113, 130, 131, 143, 156, 171, 172, 173, 177, 182, 208, 209, 216, 218, 221, 226, 235, 252, 275, 277, 296, 301, 311, 341, 357, 374, 384, 395, 424, 446, 451, 453, 467, 472, 474, 502, 503, 505, 522, 548, 552, 556, 588, 625, 626, 641, 654, 670, 683, 702, 703, 707, 714, 716, 735, 743, 744, 754, 760, 771, 797, 824, 841, 852, 894, 896, 898, 942, 947, 968, 970, 976, 979, 983, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 33, 36, 54, 65, 76, 91, 105, 109, 123, 128, 130, 139, 161, 162, 194, 198, 228, 235, 261, 282, 288, 308, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 485, 486, 502, 515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 637, 646, 683, 704, 705, 707, 710, 726, 734, 741, 747, 777, 780, 806, 816, 832, 854, 863, 865, 918, 945, 948, 956, 958, 961, 965, 976, 986, 995}
[INFO] [stdout] b items: {5, 68, 119, 267, 287, 317, 462, 502, 511, 630, 704, 751, 859, 866, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 996), fp: EncodedCountingMonoid(80, SumMonoid(40537)) }], item_sets: [ItemSet { range: Range(996, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 511), fp: EncodedCountingMonoid(8, SumMonoid(2027)) }, Fingerprint { range: Range(511, 996), fp: EncodedCountingMonoid(7, SumMonoid(5314)) }], item_sets: [ItemSet { range: Range(996, 5), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 288), fp: EncodedCountingMonoid(21, SumMonoid(2815)) }, Fingerprint { range: Range(288, 511), fp: EncodedCountingMonoid(20, SumMonoid(8047)) }, Fingerprint { range: Range(511, 747), fp: EncodedCountingMonoid(20, SumMonoid(12727)) }, Fingerprint { range: Range(747, 996), fp: EncodedCountingMonoid(19, SumMonoid(16948)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 267), fp: EncodedCountingMonoid(3, SumMonoid(192)) }], item_sets: [ItemSet { range: Range(267, 288), items: [267, 287], want_response: true }, ItemSet { range: Range(288, 502), items: [317, 462], want_response: true }, ItemSet { range: Range(502, 511), items: [502], want_response: true }, ItemSet { range: Range(511, 704), items: [511, 630], want_response: true }, ItemSet { range: Range(704, 747), items: [704], want_response: true }, ItemSet { range: Range(747, 866), items: [751, 859], want_response: true }, ItemSet { range: Range(866, 996), items: [866, 993], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 128), fp: EncodedCountingMonoid(10, SumMonoid(697)) }, Fingerprint { range: Range(128, 267), fp: EncodedCountingMonoid(10, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(267, 288), items: [282], want_response: false }, ItemSet { range: Range(288, 502), items: [288, 308, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 485, 486], want_response: false }, ItemSet { range: Range(502, 511), items: [502], want_response: false }, ItemSet { range: Range(511, 704), items: [515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 637, 646, 683], want_response: false }, ItemSet { range: Range(704, 747), items: [704, 705, 707, 710, 726, 734, 741], want_response: false }, ItemSet { range: Range(747, 866), items: [747, 777, 780, 806, 816, 832, 854, 863, 865], want_response: false }, ItemSet { range: Range(866, 996), items: [918, 945, 948, 956, 958, 961, 965, 976, 986, 995], want_response: false }], wants: [267, 287, 317, 462, 511, 630, 751, 859, 866, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 119), items: [5, 68], want_response: true }, ItemSet { range: Range(119, 128), items: [119], want_response: true }, ItemSet { range: Range(128, 267), items: [], want_response: true }], wants: [282, 288, 308, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 485, 486, 515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 637, 646, 683, 705, 707, 710, 726, 734, 741, 747, 777, 780, 806, 816, 832, 854, 863, 865, 918, 945, 948, 956, 958, 961, 965, 976, 986, 995], provide: [(267, true), (287, true), (317, true), (462, true), (511, true), (630, true), (751, true), (859, true), (866, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 119), items: [5, 33, 36, 54, 65, 76, 91, 105, 109], want_response: false }, ItemSet { range: Range(119, 128), items: [123], want_response: false }, ItemSet { range: Range(128, 267), items: [128, 130, 139, 161, 162, 194, 198, 228, 235, 261], want_response: false }], wants: [68, 119], provide: [(282, true), (288, true), (308, true), (337, true), (344, true), (349, true), (367, true), (387, true), (389, true), (390, true), (398, true), (400, true), (408, true), (416, true), (422, true), (454, true), (457, true), (460, true), (485, true), (486, true), (515, true), (536, true), (538, true), (546, true), (563, true), (597, true), (598, true), (602, true), (614, true), (625, true), (637, true), (646, true), (683, true), (705, true), (707, true), (710, true), (726, true), (734, true), (741, true), (747, true), (777, true), (780, true), (806, true), (816, true), (832, true), (854, true), (863, true), (865, true), (918, true), (945, true), (948, true), (956, true), (958, true), (961, true), (965, true), (976, true), (986, true), (995, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [33, 36, 54, 65, 76, 91, 105, 109, 123, 128, 130, 139, 161, 162, 194, 198, 228, 235, 261], provide: [(68, true), (119, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(33, true), (36, true), (54, true), (65, true), (76, true), (91, true), (105, true), (109, true), (123, true), (128, true), (130, true), (139, true), (161, true), (162, true), (194, true), (198, true), (228, true), (235, true), (261, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 33, 36, 54, 65, 76, 91, 105, 109, 123, 128, 130, 139, 161, 162, 194, 198, 228, 235, 261, 282, 288, 308, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 485, 486, 502, 515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 637, 646, 683, 704, 705, 707, 710, 726, 734, 741, 747, 777, 780, 806, 816, 832, 854, 863, 865, 918, 945, 948, 956, 958, 961, 965, 976, 986, 995} + [267, 287, 317, 462, 511, 630, 751, 859, 866, 993, 68, 119]
[INFO] [stdout] b all: {5, 68, 119, 267, 287, 317, 462, 502, 511, 630, 704, 751, 859, 866, 993} + [282, 288, 308, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 485, 486, 515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 637, 646, 683, 705, 707, 710, 726, 734, 741, 747, 777, 780, 806, 816, 832, 854, 863, 865, 918, 945, 948, 956, 958, 961, 965, 976, 986, 995, 33, 36, 54, 65, 76, 91, 105, 109, 123, 128, 130, 139, 161, 162, 194, 198, 228, 235, 261]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 33, 36, 54, 65, 68, 76, 91, 105, 109, 119, 123, 128, 130, 139, 161, 162, 194, 198, 228, 235, 261, 267, 282, 287, 288, 308, 317, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 462, 485, 486, 502, 511, 515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 630, 637, 646, 683, 704, 705, 707, 710, 726, 734, 741, 747, 751, 777, 780, 806, 816, 832, 854, 859, 863, 865, 866, 918, 945, 948, 956, 958, 961, 965, 976, 986, 993, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 33, 36, 54, 65, 68, 76, 91, 105, 109, 119, 123, 128, 130, 139, 161, 162, 194, 198, 228, 235, 261, 267, 282, 287, 288, 308, 317, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 462, 485, 486, 502, 511, 515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 630, 637, 646, 683, 704, 705, 707, 710, 726, 734, 741, 747, 751, 777, 780, 806, 816, 832, 854, 859, 863, 865, 866, 918, 945, 948, 956, 958, 961, 965, 976, 986, 993, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 33, 36, 54, 65, 68, 76, 91, 105, 109, 119, 123, 128, 130, 139, 161, 162, 194, 198, 228, 235, 261, 267, 282, 287, 288, 308, 317, 337, 344, 349, 367, 387, 389, 390, 398, 400, 408, 416, 422, 454, 457, 460, 462, 485, 486, 502, 511, 515, 536, 538, 546, 563, 597, 598, 602, 614, 625, 630, 637, 646, 683, 704, 705, 707, 710, 726, 734, 741, 747, 751, 777, 780, 806, 816, 832, 854, 859, 863, 865, 866, 918, 945, 948, 956, 958, 961, 965, 976, 986, 993, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {397}
[INFO] [stdout] b items: {6, 91, 249, 266, 349, 437, 486, 506, 516, 645, 870, 995}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(397, 398), fp: EncodedCountingMonoid(1, SumMonoid(397)) }], item_sets: [ItemSet { range: Range(398, 397), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(398, 397), items: [437, 486, 506, 516, 645, 870, 995, 6, 91, 249, 266, 349], want_response: false }, ItemSet { range: Range(397, 398), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(397, 398), items: [397], want_response: false }], wants: [437, 486, 506, 516, 645, 870, 995, 6, 91, 249, 266, 349], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [397], provide: [(437, true), (486, true), (506, true), (516, true), (645, true), (870, true), (995, true), (6, true), (91, true), (249, true), (266, true), (349, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(397, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {397} + [437, 486, 506, 516, 645, 870, 995, 6, 91, 249, 266, 349]
[INFO] [stdout] b all: {6, 91, 249, 266, 349, 437, 486, 506, 516, 645, 870, 995} + [397]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 91, 249, 266, 349, 397, 437, 486, 506, 516, 645, 870, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 91, 249, 266, 349, 397, 437, 486, 506, 516, 645, 870, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 91, 249, 266, 349, 397, 437, 486, 506, 516, 645, 870, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {28, 33, 35, 64, 75, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 249, 273, 303, 308, 311, 314, 315, 322, 339, 340, 341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698, 768, 776, 788, 797, 808, 813, 817, 833, 856, 865, 877, 883, 888, 909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997}
[INFO] [stdout] b items: {76, 246, 333, 480, 483, 740, 782, 833, 875, 882}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(28, 998), fp: EncodedCountingMonoid(78, SumMonoid(40950)) }], item_sets: [ItemSet { range: Range(998, 28), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(28, 740), fp: EncodedCountingMonoid(5, SumMonoid(1618)) }, Fingerprint { range: Range(740, 998), fp: EncodedCountingMonoid(5, SumMonoid(4112)) }], item_sets: [ItemSet { range: Range(998, 28), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(28, 341), fp: EncodedCountingMonoid(26, SumMonoid(4934)) }, Fingerprint { range: Range(341, 740), fp: EncodedCountingMonoid(26, SumMonoid(12833)) }, Fingerprint { range: Range(740, 909), fp: EncodedCountingMonoid(13, SumMonoid(10769)) }, Fingerprint { range: Range(909, 998), fp: EncodedCountingMonoid(13, SumMonoid(12414)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(740, 875), fp: EncodedCountingMonoid(3, SumMonoid(2355)) }], item_sets: [ItemSet { range: Range(28, 333), items: [76, 246], want_response: true }, ItemSet { range: Range(333, 341), items: [333], want_response: true }, ItemSet { range: Range(341, 740), items: [480, 483], want_response: true }, ItemSet { range: Range(875, 909), items: [875, 882], want_response: true }, ItemSet { range: Range(909, 998), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(740, 813), fp: EncodedCountingMonoid(5, SumMonoid(3937)) }, Fingerprint { range: Range(813, 875), fp: EncodedCountingMonoid(5, SumMonoid(4184)) }], item_sets: [ItemSet { range: Range(28, 333), items: [28, 33, 35, 64, 75, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 249, 273, 303, 308, 311, 314, 315, 322], want_response: false }, ItemSet { range: Range(333, 341), items: [339, 340], want_response: false }, ItemSet { range: Range(341, 740), items: [341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698], want_response: false }, ItemSet { range: Range(875, 909), items: [877, 883, 888], want_response: false }, ItemSet { range: Range(909, 998), items: [909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997], want_response: false }], wants: [76, 246, 333, 480, 483, 875, 882], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(740, 813), items: [740, 782], want_response: true }, ItemSet { range: Range(813, 875), items: [833], want_response: true }], wants: [28, 33, 35, 64, 75, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 249, 273, 303, 308, 311, 314, 315, 322, 339, 340, 341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698, 877, 883, 888, 909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997], provide: [(76, true), (246, true), (333, true), (480, true), (483, true), (875, true), (882, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(740, 813), items: [768, 776, 788, 797, 808], want_response: false }, ItemSet { range: Range(813, 875), items: [813, 817, 833, 856, 865], want_response: false }], wants: [740, 782], provide: [(28, true), (33, true), (35, true), (64, true), (75, true), (79, true), (82, true), (99, true), (124, true), (132, true), (142, true), (154, true), (172, true), (189, true), (222, true), (230, true), (249, true), (273, true), (303, true), (308, true), (311, true), (314, true), (315, true), (322, true), (339, true), (340, true), (341, true), (343, true), (347, true), (358, true), (377, true), (387, true), (390, true), (416, true), (427, true), (429, true), (440, true), (475, true), (486, true), (512, true), (518, true), (526, true), (556, true), (557, true), (578, true), (588, true), (603, true), (607, true), (611, true), (622, true), (641, true), (698, true), (877, true), (883, true), (888, true), (909, true), (913, true), (930, true), (936, true), (945, true), (953, true), (958, true), (959, true), (965, true), (978, true), (982, true), (989, true), (997, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [768, 776, 788, 797, 808, 813, 817, 856, 865], provide: [(740, true), (782, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(768, true), (776, true), (788, true), (797, true), (808, true), (813, true), (817, true), (856, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {28, 33, 35, 64, 75, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 249, 273, 303, 308, 311, 314, 315, 322, 339, 340, 341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698, 768, 776, 788, 797, 808, 813, 817, 833, 856, 865, 877, 883, 888, 909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997} + [76, 246, 333, 480, 483, 875, 882, 740, 782]
[INFO] [stdout] b all: {76, 246, 333, 480, 483, 740, 782, 833, 875, 882} + [28, 33, 35, 64, 75, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 249, 273, 303, 308, 311, 314, 315, 322, 339, 340, 341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698, 877, 883, 888, 909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997, 768, 776, 788, 797, 808, 813, 817, 856, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [28, 33, 35, 64, 75, 76, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 246, 249, 273, 303, 308, 311, 314, 315, 322, 333, 339, 340, 341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 480, 483, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698, 740, 768, 776, 782, 788, 797, 808, 813, 817, 833, 856, 865, 875, 877, 882, 883, 888, 909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [28, 33, 35, 64, 75, 76, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 246, 249, 273, 303, 308, 311, 314, 315, 322, 333, 339, 340, 341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 480, 483, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698, 740, 768, 776, 782, 788, 797, 808, 813, 817, 833, 856, 865, 875, 877, 882, 883, 888, 909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [28, 33, 35, 64, 75, 76, 79, 82, 99, 124, 132, 142, 154, 172, 189, 222, 230, 246, 249, 273, 303, 308, 311, 314, 315, 322, 333, 339, 340, 341, 343, 347, 358, 377, 387, 390, 416, 427, 429, 440, 475, 480, 483, 486, 512, 518, 526, 556, 557, 578, 588, 603, 607, 611, 622, 641, 698, 740, 768, 776, 782, 788, 797, 808, 813, 817, 833, 856, 865, 875, 877, 882, 883, 888, 909, 913, 930, 936, 945, 953, 958, 959, 965, 978, 982, 989, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {10, 13, 38, 159, 165, 180, 217, 220, 258, 265, 274, 276, 302, 315, 323, 350, 377, 381, 452, 453, 463, 568, 574, 578, 620, 647, 665, 670, 689, 732, 741, 746, 835, 852, 858, 879, 886, 908, 934, 944, 961}
[INFO] [stdout] b items: {6, 11, 14, 18, 29, 34, 78, 116, 133, 137, 147, 179, 192, 229, 233, 238, 257, 286, 308, 332, 363, 365, 412, 474, 476, 491, 498, 572, 594, 607, 612, 648, 673, 674, 685, 693, 722, 732, 753, 760, 772, 776, 806, 816, 832, 864, 868, 871, 876, 878, 883, 915, 927, 929, 930, 939, 965, 967, 992}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 962), fp: EncodedCountingMonoid(41, SumMonoid(20778)) }], item_sets: [ItemSet { range: Range(962, 10), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 607), fp: EncodedCountingMonoid(28, SumMonoid(7216)) }, Fingerprint { range: Range(607, 962), fp: EncodedCountingMonoid(27, SumMonoid(21441)) }], item_sets: [ItemSet { range: Range(962, 10), items: [965, 967, 992, 6], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 302), fp: EncodedCountingMonoid(12, SumMonoid(2075)) }, Fingerprint { range: Range(302, 607), fp: EncodedCountingMonoid(12, SumMonoid(5136)) }, Fingerprint { range: Range(607, 852), fp: EncodedCountingMonoid(9, SumMonoid(6345)) }, Fingerprint { range: Range(852, 962), fp: EncodedCountingMonoid(8, SumMonoid(7222)) }], item_sets: [], wants: [965, 967, 992, 6], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 147), fp: EncodedCountingMonoid(9, SumMonoid(570)) }, Fingerprint { range: Range(147, 302), fp: EncodedCountingMonoid(8, SumMonoid(1761)) }, Fingerprint { range: Range(302, 476), fp: EncodedCountingMonoid(6, SumMonoid(2254)) }, Fingerprint { range: Range(476, 607), fp: EncodedCountingMonoid(5, SumMonoid(2631)) }, Fingerprint { range: Range(607, 732), fp: EncodedCountingMonoid(8, SumMonoid(5314)) }, Fingerprint { range: Range(732, 852), fp: EncodedCountingMonoid(8, SumMonoid(6247)) }, Fingerprint { range: Range(852, 915), fp: EncodedCountingMonoid(6, SumMonoid(5240)) }, Fingerprint { range: Range(915, 962), fp: EncodedCountingMonoid(5, SumMonoid(4640)) }], item_sets: [], wants: [], provide: [(965, true), (967, true), (992, true), (6, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(147, 258), fp: EncodedCountingMonoid(5, SumMonoid(941)) }, Fingerprint { range: Range(258, 302), fp: EncodedCountingMonoid(4, SumMonoid(1073)) }, Fingerprint { range: Range(302, 381), fp: EncodedCountingMonoid(5, SumMonoid(1667)) }, Fingerprint { range: Range(381, 476), fp: EncodedCountingMonoid(4, SumMonoid(1749)) }, Fingerprint { range: Range(607, 670), fp: EncodedCountingMonoid(3, SumMonoid(1932)) }, Fingerprint { range: Range(852, 886), fp: EncodedCountingMonoid(3, SumMonoid(2589)) }], item_sets: [ItemSet { range: Range(10, 38), items: [10, 13], want_response: true }, ItemSet { range: Range(38, 147), items: [38], want_response: true }, ItemSet { range: Range(476, 578), items: [568, 574], want_response: true }, ItemSet { range: Range(578, 607), items: [578], want_response: true }, ItemSet { range: Range(670, 732), items: [670, 689], want_response: true }, ItemSet { range: Range(732, 746), items: [732, 741], want_response: true }, ItemSet { range: Range(746, 852), items: [746, 835], want_response: true }, ItemSet { range: Range(886, 915), items: [886, 908], want_response: true }, ItemSet { range: Range(915, 961), items: [934, 944], want_response: true }, ItemSet { range: Range(961, 962), items: [961], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(147, 233), fp: EncodedCountingMonoid(4, SumMonoid(747)) }, Fingerprint { range: Range(233, 258), fp: EncodedCountingMonoid(3, SumMonoid(728)) }, Fingerprint { range: Range(852, 876), fp: EncodedCountingMonoid(3, SumMonoid(2603)) }, Fingerprint { range: Range(876, 886), fp: EncodedCountingMonoid(3, SumMonoid(2637)) }], item_sets: [ItemSet { range: Range(10, 38), items: [11, 14, 18, 29, 34], want_response: false }, ItemSet { range: Range(38, 147), items: [78, 116, 133, 137], want_response: false }, ItemSet { range: Range(476, 578), items: [476, 491, 498, 572], want_response: false }, ItemSet { range: Range(578, 607), items: [594], want_response: false }, ItemSet { range: Range(670, 732), items: [673, 674, 685, 693, 722], want_response: false }, ItemSet { range: Range(732, 746), items: [732], want_response: false }, ItemSet { range: Range(746, 852), items: [753, 760, 772, 776, 806, 816, 832], want_response: false }, ItemSet { range: Range(886, 915), items: [], want_response: false }, ItemSet { range: Range(915, 961), items: [915, 927, 929, 930, 939], want_response: false }, ItemSet { range: Range(961, 962), items: [], want_response: false }, ItemSet { range: Range(258, 302), items: [286], want_response: true }, ItemSet { range: Range(302, 363), items: [308, 332], want_response: true }, ItemSet { range: Range(363, 381), items: [363, 365], want_response: true }, ItemSet { range: Range(381, 476), items: [412, 474], want_response: true }, ItemSet { range: Range(607, 648), items: [607, 612], want_response: true }, ItemSet { range: Range(648, 670), items: [648], want_response: true }], wants: [10, 13, 38, 568, 574, 578, 670, 689, 741, 746, 835, 886, 908, 934, 944, 961], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(147, 217), fp: EncodedCountingMonoid(3, SumMonoid(504)) }], item_sets: [ItemSet { range: Range(258, 302), items: [258, 265, 274, 276], want_response: false }, ItemSet { range: Range(302, 363), items: [302, 315, 323, 350], want_response: false }, ItemSet { range: Range(363, 381), items: [377], want_response: false }, ItemSet { range: Range(381, 476), items: [381, 452, 453, 463], want_response: false }, ItemSet { range: Range(607, 648), items: [620, 647], want_response: false }, ItemSet { range: Range(648, 670), items: [665], want_response: false }, ItemSet { range: Range(217, 233), items: [217, 220], want_response: true }, ItemSet { range: Range(233, 258), items: [], want_response: true }, ItemSet { range: Range(852, 876), items: [852, 858], want_response: true }, ItemSet { range: Range(876, 886), items: [879], want_response: true }], wants: [11, 14, 18, 29, 34, 78, 116, 133, 137, 476, 491, 498, 572, 594, 673, 674, 685, 693, 722, 753, 760, 772, 776, 806, 816, 832, 915, 927, 929, 930, 939, 286, 308, 332, 363, 365, 412, 474, 607, 612, 648], provide: [(10, true), (13, true), (38, true), (568, true), (574, true), (578, true), (670, true), (689, true), (741, true), (746, true), (835, true), (886, true), (908, true), (934, true), (944, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(217, 233), items: [229], want_response: false }, ItemSet { range: Range(233, 258), items: [233, 238, 257], want_response: false }, ItemSet { range: Range(852, 876), items: [864, 868, 871], want_response: false }, ItemSet { range: Range(876, 886), items: [876, 878, 883], want_response: false }, ItemSet { range: Range(147, 192), items: [147, 179], want_response: true }, ItemSet { range: Range(192, 217), items: [192], want_response: true }], wants: [258, 265, 274, 276, 302, 315, 323, 350, 377, 381, 452, 453, 463, 620, 647, 665, 217, 220, 852, 858, 879], provide: [(11, true), (14, true), (18, true), (29, true), (34, true), (78, true), (116, true), (133, true), (137, true), (476, true), (491, true), (498, true), (572, true), (594, true), (673, true), (674, true), (685, true), (693, true), (722, true), (753, true), (760, true), (772, true), (776, true), (806, true), (816, true), (832, true), (915, true), (927, true), (929, true), (930, true), (939, true), (286, true), (308, true), (332, true), (363, true), (365, true), (412, true), (474, true), (607, true), (612, true), (648, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(147, 192), items: [159, 165, 180], want_response: false }, ItemSet { range: Range(192, 217), items: [], want_response: false }], wants: [229, 233, 238, 257, 864, 868, 871, 876, 878, 883, 147, 179, 192], provide: [(258, true), (265, true), (274, true), (276, true), (302, true), (315, true), (323, true), (350, true), (377, true), (381, true), (452, true), (453, true), (463, true), (620, true), (647, true), (665, true), (217, true), (220, true), (852, true), (858, true), (879, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [159, 165, 180], provide: [(229, true), (233, true), (238, true), (257, true), (864, true), (868, true), (871, true), (876, true), (878, true), (883, true), (147, true), (179, true), (192, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(159, true), (165, true), (180, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {10, 13, 38, 159, 165, 180, 217, 220, 258, 265, 274, 276, 302, 315, 323, 350, 377, 381, 452, 453, 463, 568, 574, 578, 620, 647, 665, 670, 689, 732, 741, 746, 835, 852, 858, 879, 886, 908, 934, 944, 961} + [965, 967, 992, 6, 11, 14, 18, 29, 34, 78, 116, 133, 137, 476, 491, 498, 572, 594, 673, 674, 685, 693, 722, 753, 760, 772, 776, 806, 816, 832, 915, 927, 929, 930, 939, 286, 308, 332, 363, 365, 412, 474, 607, 612, 648, 229, 233, 238, 257, 864, 868, 871, 876, 878, 883, 147, 179, 192]
[INFO] [stdout] b all: {6, 11, 14, 18, 29, 34, 78, 116, 133, 137, 147, 179, 192, 229, 233, 238, 257, 286, 308, 332, 363, 365, 412, 474, 476, 491, 498, 572, 594, 607, 612, 648, 673, 674, 685, 693, 722, 732, 753, 760, 772, 776, 806, 816, 832, 864, 868, 871, 876, 878, 883, 915, 927, 929, 930, 939, 965, 967, 992} + [10, 13, 38, 568, 574, 578, 670, 689, 741, 746, 835, 886, 908, 934, 944, 961, 258, 265, 274, 276, 302, 315, 323, 350, 377, 381, 452, 453, 463, 620, 647, 665, 217, 220, 852, 858, 879, 159, 165, 180]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 10, 11, 13, 14, 18, 29, 34, 38, 78, 116, 133, 137, 147, 159, 165, 179, 180, 192, 217, 220, 229, 233, 238, 257, 258, 265, 274, 276, 286, 302, 308, 315, 323, 332, 350, 363, 365, 377, 381, 412, 452, 453, 463, 474, 476, 491, 498, 568, 572, 574, 578, 594, 607, 612, 620, 647, 648, 665, 670, 673, 674, 685, 689, 693, 722, 732, 741, 746, 753, 760, 772, 776, 806, 816, 832, 835, 852, 858, 864, 868, 871, 876, 878, 879, 883, 886, 908, 915, 927, 929, 930, 934, 939, 944, 961, 965, 967, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 10, 11, 13, 14, 18, 29, 34, 38, 78, 116, 133, 137, 147, 159, 165, 179, 180, 192, 217, 220, 229, 233, 238, 257, 258, 265, 274, 276, 286, 302, 308, 315, 323, 332, 350, 363, 365, 377, 381, 412, 452, 453, 463, 474, 476, 491, 498, 568, 572, 574, 578, 594, 607, 612, 620, 647, 648, 665, 670, 673, 674, 685, 689, 693, 722, 732, 741, 746, 753, 760, 772, 776, 806, 816, 832, 835, 852, 858, 864, 868, 871, 876, 878, 879, 883, 886, 908, 915, 927, 929, 930, 934, 939, 944, 961, 965, 967, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 10, 11, 13, 14, 18, 29, 34, 38, 78, 116, 133, 137, 147, 159, 165, 179, 180, 192, 217, 220, 229, 233, 238, 257, 258, 265, 274, 276, 286, 302, 308, 315, 323, 332, 350, 363, 365, 377, 381, 412, 452, 453, 463, 474, 476, 491, 498, 568, 572, 574, 578, 594, 607, 612, 620, 647, 648, 665, 670, 673, 674, 685, 689, 693, 722, 732, 741, 746, 753, 760, 772, 776, 806, 816, 832, 835, 852, 858, 864, 868, 871, 876, 878, 879, 883, 886, 908, 915, 927, 929, 930, 934, 939, 944, 961, 965, 967, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {409, 454, 491, 635, 841}
[INFO] [stdout] b items: {19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393, 413, 439, 484, 485, 504, 533, 553, 627, 649, 674, 701, 702, 738, 754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836, 865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(409, 842), fp: EncodedCountingMonoid(5, SumMonoid(2830)) }], item_sets: [ItemSet { range: Range(842, 409), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(409, 754), fp: EncodedCountingMonoid(13, SumMonoid(7502)) }, Fingerprint { range: Range(754, 842), fp: EncodedCountingMonoid(12, SumMonoid(9502)) }], item_sets: [ItemSet { range: Range(842, 409), items: [865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987, 19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(409, 491), items: [409, 454], want_response: true }, ItemSet { range: Range(491, 754), items: [491, 635], want_response: true }, ItemSet { range: Range(754, 842), items: [841], want_response: true }], wants: [865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987, 19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(409, 491), items: [413, 439, 484, 485], want_response: false }, ItemSet { range: Range(491, 754), items: [504, 533, 553, 627, 649, 674, 701, 702, 738], want_response: false }, ItemSet { range: Range(754, 842), items: [754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836], want_response: false }], wants: [409, 454, 491, 635, 841], provide: [(865, true), (879, true), (888, true), (897, true), (899, true), (911, true), (915, true), (972, true), (976, true), (986, true), (987, true), (19, true), (47, true), (56, true), (71, true), (107, true), (153, true), (188, true), (209, true), (234, true), (248, true), (254, true), (268, true), (277, true), (285, true), (308, true), (324, true), (332, true), (343, true), (358, true), (393, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [413, 439, 484, 485, 504, 533, 553, 627, 649, 674, 701, 702, 738, 754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836], provide: [(409, true), (454, true), (491, true), (635, true), (841, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(413, true), (439, true), (484, true), (485, true), (504, true), (533, true), (553, true), (627, true), (649, true), (674, true), (701, true), (702, true), (738, true), (754, true), (767, true), (772, true), (778, true), (779, true), (780, true), (791, true), (793, true), (804, true), (813, true), (835, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {409, 454, 491, 635, 841} + [865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987, 19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393, 413, 439, 484, 485, 504, 533, 553, 627, 649, 674, 701, 702, 738, 754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836]
[INFO] [stdout] b all: {19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393, 413, 439, 484, 485, 504, 533, 553, 627, 649, 674, 701, 702, 738, 754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836, 865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987} + [409, 454, 491, 635, 841]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393, 409, 413, 439, 454, 484, 485, 491, 504, 533, 553, 627, 635, 649, 674, 701, 702, 738, 754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836, 841, 865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393, 409, 413, 439, 454, 484, 485, 491, 504, 533, 553, 627, 635, 649, 674, 701, 702, 738, 754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836, 841, 865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [19, 47, 56, 71, 107, 153, 188, 209, 234, 248, 254, 268, 277, 285, 308, 324, 332, 343, 358, 393, 409, 413, 439, 454, 484, 485, 491, 504, 533, 553, 627, 635, 649, 674, 701, 702, 738, 754, 767, 772, 778, 779, 780, 791, 793, 804, 813, 835, 836, 841, 865, 879, 888, 897, 899, 911, 915, 972, 976, 986, 987], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {8, 10, 50, 81, 86, 92, 121, 125, 150, 175, 197, 208, 227, 241, 256, 257, 266, 276, 278, 290, 293, 294, 296, 315, 318, 322, 325, 340, 346, 351, 373, 374, 383, 385, 467, 489, 517, 523, 529, 554, 559, 563, 569, 571, 579, 588, 593, 612, 625, 626, 639, 647, 671, 697, 710, 712, 714, 722, 731, 736, 737, 738, 755, 759, 765, 773, 783, 804, 809, 832, 833, 886, 933, 934, 956, 963, 964, 991, 992}
[INFO] [stdout] b items: {10, 24, 26, 32, 34, 36, 47, 55, 65, 69, 93, 98, 102, 105, 146, 226, 229, 235, 241, 250, 270, 286, 309, 320, 331, 336, 351, 353, 356, 360, 373, 394, 401, 404, 407, 412, 415, 423, 448, 459, 479, 484, 503, 508, 516, 568, 587, 592, 634, 658, 660, 664, 665, 671, 679, 697, 709, 717, 718, 732, 738, 769, 787, 800, 801, 810, 820, 829, 834, 835, 858, 861, 873, 874, 883, 923, 928, 969, 994, 998}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 993), fp: EncodedCountingMonoid(79, SumMonoid(40259)) }], item_sets: [ItemSet { range: Range(993, 8), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 459), fp: EncodedCountingMonoid(39, SumMonoid(9072)) }, Fingerprint { range: Range(459, 993), fp: EncodedCountingMonoid(39, SumMonoid(28092)) }], item_sets: [ItemSet { range: Range(993, 8), items: [994, 998], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 276), fp: EncodedCountingMonoid(17, SumMonoid(2550)) }, Fingerprint { range: Range(276, 459), fp: EncodedCountingMonoid(17, SumMonoid(5559)) }, Fingerprint { range: Range(459, 722), fp: EncodedCountingMonoid(23, SumMonoid(13754)) }, Fingerprint { range: Range(722, 993), fp: EncodedCountingMonoid(22, SumMonoid(18396)) }], item_sets: [], wants: [994, 998], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 98), fp: EncodedCountingMonoid(11, SumMonoid(491)) }, Fingerprint { range: Range(98, 276), fp: EncodedCountingMonoid(10, SumMonoid(1902)) }, Fingerprint { range: Range(276, 373), fp: EncodedCountingMonoid(9, SumMonoid(3002)) }, Fingerprint { range: Range(373, 459), fp: EncodedCountingMonoid(9, SumMonoid(3677)) }, Fingerprint { range: Range(459, 658), fp: EncodedCountingMonoid(10, SumMonoid(5330)) }, Fingerprint { range: Range(658, 722), fp: EncodedCountingMonoid(10, SumMonoid(6838)) }, Fingerprint { range: Range(722, 835), fp: EncodedCountingMonoid(10, SumMonoid(7920)) }, Fingerprint { range: Range(835, 993), fp: EncodedCountingMonoid(9, SumMonoid(8004)) }], item_sets: [], wants: [], provide: [(994, true), (998, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 81), fp: EncodedCountingMonoid(3, SumMonoid(68)) }, Fingerprint { range: Range(81, 98), fp: EncodedCountingMonoid(3, SumMonoid(259)) }, Fingerprint { range: Range(98, 227), fp: EncodedCountingMonoid(6, SumMonoid(976)) }, Fingerprint { range: Range(227, 276), fp: EncodedCountingMonoid(5, SumMonoid(1247)) }, Fingerprint { range: Range(276, 318), fp: EncodedCountingMonoid(7, SumMonoid(2042)) }, Fingerprint { range: Range(318, 373), fp: EncodedCountingMonoid(6, SumMonoid(2002)) }, Fingerprint { range: Range(459, 571), fp: EncodedCountingMonoid(9, SumMonoid(4770)) }, Fingerprint { range: Range(571, 658), fp: EncodedCountingMonoid(9, SumMonoid(5480)) }, Fingerprint { range: Range(658, 712), fp: EncodedCountingMonoid(3, SumMonoid(2078)) }, Fingerprint { range: Range(722, 765), fp: EncodedCountingMonoid(7, SumMonoid(5178)) }, Fingerprint { range: Range(765, 835), fp: EncodedCountingMonoid(7, SumMonoid(5599)) }, Fingerprint { range: Range(835, 963), fp: EncodedCountingMonoid(4, SumMonoid(3709)) }, Fingerprint { range: Range(963, 993), fp: EncodedCountingMonoid(4, SumMonoid(3910)) }], item_sets: [ItemSet { range: Range(373, 383), items: [373, 374], want_response: true }, ItemSet { range: Range(383, 459), items: [383, 385], want_response: true }, ItemSet { range: Range(712, 722), items: [712, 714], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 36), fp: EncodedCountingMonoid(5, SumMonoid(126)) }, Fingerprint { range: Range(36, 81), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(98, 146), fp: EncodedCountingMonoid(3, SumMonoid(305)) }, Fingerprint { range: Range(227, 250), fp: EncodedCountingMonoid(3, SumMonoid(705)) }, Fingerprint { range: Range(318, 353), fp: EncodedCountingMonoid(4, SumMonoid(1338)) }, Fingerprint { range: Range(353, 373), fp: EncodedCountingMonoid(3, SumMonoid(1069)) }, Fingerprint { range: Range(459, 508), fp: EncodedCountingMonoid(4, SumMonoid(1925)) }, Fingerprint { range: Range(508, 571), fp: EncodedCountingMonoid(3, SumMonoid(1592)) }, Fingerprint { range: Range(658, 671), fp: EncodedCountingMonoid(4, SumMonoid(2647)) }, Fingerprint { range: Range(671, 712), fp: EncodedCountingMonoid(4, SumMonoid(2756)) }, Fingerprint { range: Range(765, 810), fp: EncodedCountingMonoid(4, SumMonoid(3157)) }, Fingerprint { range: Range(810, 835), fp: EncodedCountingMonoid(4, SumMonoid(3293)) }, Fingerprint { range: Range(835, 874), fp: EncodedCountingMonoid(4, SumMonoid(3427)) }, Fingerprint { range: Range(874, 963), fp: EncodedCountingMonoid(4, SumMonoid(3608)) }], item_sets: [ItemSet { range: Range(373, 383), items: [373], want_response: false }, ItemSet { range: Range(383, 459), items: [394, 401, 404, 407, 412, 415, 423, 448], want_response: false }, ItemSet { range: Range(712, 722), items: [717, 718], want_response: false }, ItemSet { range: Range(81, 98), items: [93], want_response: true }, ItemSet { range: Range(146, 227), items: [146, 226], want_response: true }, ItemSet { range: Range(250, 276), items: [250, 270], want_response: true }, ItemSet { range: Range(276, 318), items: [286, 309], want_response: true }, ItemSet { range: Range(571, 634), items: [587, 592], want_response: true }, ItemSet { range: Range(634, 658), items: [634], want_response: true }, ItemSet { range: Range(722, 765), items: [732, 738], want_response: true }, ItemSet { range: Range(963, 993), items: [969], want_response: true }], wants: [374, 383, 385, 712, 714], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(318, 340), fp: EncodedCountingMonoid(3, SumMonoid(965)) }, Fingerprint { range: Range(340, 353), fp: EncodedCountingMonoid(3, SumMonoid(1037)) }, Fingerprint { range: Range(508, 559), fp: EncodedCountingMonoid(4, SumMonoid(2123)) }, Fingerprint { range: Range(559, 571), fp: EncodedCountingMonoid(3, SumMonoid(1691)) }, Fingerprint { range: Range(765, 804), fp: EncodedCountingMonoid(3, SumMonoid(2321)) }], item_sets: [ItemSet { range: Range(81, 98), items: [81, 86, 92], want_response: false }, ItemSet { range: Range(146, 227), items: [150, 175, 197, 208], want_response: false }, ItemSet { range: Range(250, 276), items: [256, 257, 266], want_response: false }, ItemSet { range: Range(276, 318), items: [276, 278, 290, 293, 294, 296, 315], want_response: false }, ItemSet { range: Range(571, 634), items: [571, 579, 588, 593, 612, 625, 626], want_response: false }, ItemSet { range: Range(634, 658), items: [639, 647], want_response: false }, ItemSet { range: Range(722, 765), items: [722, 731, 736, 737, 738, 755, 759], want_response: false }, ItemSet { range: Range(963, 993), items: [963, 964, 991, 992], want_response: false }, ItemSet { range: Range(8, 36), items: [8, 10], want_response: true }, ItemSet { range: Range(36, 81), items: [50], want_response: true }, ItemSet { range: Range(98, 146), items: [121, 125], want_response: true }, ItemSet { range: Range(227, 250), items: [227, 241], want_response: true }, ItemSet { range: Range(353, 373), items: [], want_response: true }, ItemSet { range: Range(459, 508), items: [467, 489], want_response: true }, ItemSet { range: Range(658, 671), items: [], want_response: true }, ItemSet { range: Range(671, 710), items: [671, 697], want_response: true }, ItemSet { range: Range(710, 712), items: [710], want_response: true }, ItemSet { range: Range(804, 810), items: [804, 809], want_response: true }, ItemSet { range: Range(810, 835), items: [832, 833], want_response: true }, ItemSet { range: Range(835, 874), items: [], want_response: true }, ItemSet { range: Range(874, 934), items: [886, 933], want_response: true }, ItemSet { range: Range(934, 963), items: [934, 956], want_response: true }], wants: [394, 401, 404, 407, 412, 415, 423, 448, 717, 718, 93, 146, 226, 250, 270, 286, 309, 587, 592, 634, 732, 969], provide: [(374, true), (383, true), (385, true), (712, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(8, 36), items: [10, 24, 26, 32, 34], want_response: false }, ItemSet { range: Range(36, 81), items: [36, 47, 55, 65, 69], want_response: false }, ItemSet { range: Range(98, 146), items: [98, 102, 105], want_response: false }, ItemSet { range: Range(227, 250), items: [229, 235, 241], want_response: false }, ItemSet { range: Range(353, 373), items: [353, 356, 360], want_response: false }, ItemSet { range: Range(459, 508), items: [459, 479, 484, 503], want_response: false }, ItemSet { range: Range(658, 671), items: [658, 660, 664, 665], want_response: false }, ItemSet { range: Range(671, 710), items: [671, 679, 697, 709], want_response: false }, ItemSet { range: Range(710, 712), items: [], want_response: false }, ItemSet { range: Range(804, 810), items: [], want_response: false }, ItemSet { range: Range(810, 835), items: [810, 820, 829, 834], want_response: false }, ItemSet { range: Range(835, 874), items: [835, 858, 861, 873], want_response: false }, ItemSet { range: Range(874, 934), items: [874, 883, 923, 928], want_response: false }, ItemSet { range: Range(934, 963), items: [], want_response: false }, ItemSet { range: Range(318, 336), items: [320, 331], want_response: true }, ItemSet { range: Range(336, 340), items: [336], want_response: true }, ItemSet { range: Range(340, 353), items: [351], want_response: true }, ItemSet { range: Range(508, 559), items: [508, 516], want_response: true }, ItemSet { range: Range(559, 571), items: [568], want_response: true }, ItemSet { range: Range(765, 800), items: [769, 787], want_response: true }, ItemSet { range: Range(800, 804), items: [800, 801], want_response: true }], wants: [81, 86, 92, 150, 175, 197, 208, 256, 257, 266, 276, 278, 290, 293, 294, 296, 315, 571, 579, 588, 593, 612, 625, 626, 639, 647, 722, 731, 736, 737, 755, 759, 963, 964, 991, 992, 8, 50, 121, 125, 227, 467, 489, 710, 804, 809, 832, 833, 886, 933, 934, 956], provide: [(394, true), (401, true), (404, true), (407, true), (412, true), (415, true), (423, true), (448, true), (717, true), (718, true), (93, true), (146, true), (226, true), (250, true), (270, true), (286, true), (309, true), (587, true), (592, true), (634, true), (732, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(318, 336), items: [318, 322, 325], want_response: false }, ItemSet { range: Range(336, 340), items: [], want_response: false }, ItemSet { range: Range(340, 353), items: [340, 346, 351], want_response: false }, ItemSet { range: Range(508, 559), items: [517, 523, 529, 554], want_response: false }, ItemSet { range: Range(559, 571), items: [559, 563, 569], want_response: false }, ItemSet { range: Range(765, 800), items: [765, 773, 783], want_response: false }, ItemSet { range: Range(800, 804), items: [], want_response: false }], wants: [24, 26, 32, 34, 36, 47, 55, 65, 69, 98, 102, 105, 229, 235, 353, 356, 360, 459, 479, 484, 503, 658, 660, 664, 665, 679, 709, 810, 820, 829, 834, 835, 858, 861, 873, 874, 883, 923, 928, 320, 331, 336, 508, 516, 568, 769, 787, 800, 801], provide: [(81, true), (86, true), (92, true), (150, true), (175, true), (197, true), (208, true), (256, true), (257, true), (266, true), (276, true), (278, true), (290, true), (293, true), (294, true), (296, true), (315, true), (571, true), (579, true), (588, true), (593, true), (612, true), (625, true), (626, true), (639, true), (647, true), (722, true), (731, true), (736, true), (737, true), (755, true), (759, true), (963, true), (964, true), (991, true), (992, true), (8, true), (50, true), (121, true), (125, true), (227, true), (467, true), (489, true), (710, true), (804, true), (809, true), (832, true), (833, true), (886, true), (933, true), (934, true), (956, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [318, 322, 325, 340, 346, 517, 523, 529, 554, 559, 563, 569, 765, 773, 783], provide: [(24, true), (26, true), (32, true), (34, true), (36, true), (47, true), (55, true), (65, true), (69, true), (98, true), (102, true), (105, true), (229, true), (235, true), (353, true), (356, true), (360, true), (459, true), (479, true), (484, true), (503, true), (658, true), (660, true), (664, true), (665, true), (679, true), (709, true), (810, true), (820, true), (829, true), (834, true), (835, true), (858, true), (861, true), (873, true), (874, true), (883, true), (923, true), (928, true), (320, true), (331, true), (336, true), (508, true), (516, true), (568, true), (769, true), (787, true), (800, true), (801, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(318, true), (322, true), (325, true), (340, true), (346, true), (517, true), (523, true), (529, true), (554, true), (559, true), (563, true), (569, true), (765, true), (773, true), (783, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {8, 10, 50, 81, 86, 92, 121, 125, 150, 175, 197, 208, 227, 241, 256, 257, 266, 276, 278, 290, 293, 294, 296, 315, 318, 322, 325, 340, 346, 351, 373, 374, 383, 385, 467, 489, 517, 523, 529, 554, 559, 563, 569, 571, 579, 588, 593, 612, 625, 626, 639, 647, 671, 697, 710, 712, 714, 722, 731, 736, 737, 738, 755, 759, 765, 773, 783, 804, 809, 832, 833, 886, 933, 934, 956, 963, 964, 991, 992} + [994, 998, 394, 401, 404, 407, 412, 415, 423, 448, 717, 718, 93, 146, 226, 250, 270, 286, 309, 587, 592, 634, 732, 969, 24, 26, 32, 34, 36, 47, 55, 65, 69, 98, 102, 105, 229, 235, 353, 356, 360, 459, 479, 484, 503, 658, 660, 664, 665, 679, 709, 810, 820, 829, 834, 835, 858, 861, 873, 874, 883, 923, 928, 320, 331, 336, 508, 516, 568, 769, 787, 800, 801]
[INFO] [stdout] b all: {10, 24, 26, 32, 34, 36, 47, 55, 65, 69, 93, 98, 102, 105, 146, 226, 229, 235, 241, 250, 270, 286, 309, 320, 331, 336, 351, 353, 356, 360, 373, 394, 401, 404, 407, 412, 415, 423, 448, 459, 479, 484, 503, 508, 516, 568, 587, 592, 634, 658, 660, 664, 665, 671, 679, 697, 709, 717, 718, 732, 738, 769, 787, 800, 801, 810, 820, 829, 834, 835, 858, 861, 873, 874, 883, 923, 928, 969, 994, 998} + [374, 383, 385, 712, 714, 81, 86, 92, 150, 175, 197, 208, 256, 257, 266, 276, 278, 290, 293, 294, 296, 315, 571, 579, 588, 593, 612, 625, 626, 639, 647, 722, 731, 736, 737, 755, 759, 963, 964, 991, 992, 8, 50, 121, 125, 227, 467, 489, 710, 804, 809, 832, 833, 886, 933, 934, 956, 318, 322, 325, 340, 346, 517, 523, 529, 554, 559, 563, 569, 765, 773, 783]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 10, 24, 26, 32, 34, 36, 47, 50, 55, 65, 69, 81, 86, 92, 93, 98, 102, 105, 121, 125, 146, 150, 175, 197, 208, 226, 227, 229, 235, 241, 250, 256, 257, 266, 270, 276, 278, 286, 290, 293, 294, 296, 309, 315, 318, 320, 322, 325, 331, 336, 340, 346, 351, 353, 356, 360, 373, 374, 383, 385, 394, 401, 404, 407, 412, 415, 423, 448, 459, 467, 479, 484, 489, 503, 508, 516, 517, 523, 529, 554, 559, 563, 568, 569, 571, 579, 587, 588, 592, 593, 612, 625, 626, 634, 639, 647, 658, 660, 664, 665, 671, 679, 697, 709, 710, 712, 714, 717, 718, 722, 731, 732, 736, 737, 738, 755, 759, 765, 769, 773, 783, 787, 800, 801, 804, 809, 810, 820, 829, 832, 833, 834, 835, 858, 861, 873, 874, 883, 886, 923, 928, 933, 934, 956, 963, 964, 969, 991, 992, 994, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 10, 24, 26, 32, 34, 36, 47, 50, 55, 65, 69, 81, 86, 92, 93, 98, 102, 105, 121, 125, 146, 150, 175, 197, 208, 226, 227, 229, 235, 241, 250, 256, 257, 266, 270, 276, 278, 286, 290, 293, 294, 296, 309, 315, 318, 320, 322, 325, 331, 336, 340, 346, 351, 353, 356, 360, 373, 374, 383, 385, 394, 401, 404, 407, 412, 415, 423, 448, 459, 467, 479, 484, 489, 503, 508, 516, 517, 523, 529, 554, 559, 563, 568, 569, 571, 579, 587, 588, 592, 593, 612, 625, 626, 634, 639, 647, 658, 660, 664, 665, 671, 679, 697, 709, 710, 712, 714, 717, 718, 722, 731, 732, 736, 737, 738, 755, 759, 765, 769, 773, 783, 787, 800, 801, 804, 809, 810, 820, 829, 832, 833, 834, 835, 858, 861, 873, 874, 883, 886, 923, 928, 933, 934, 956, 963, 964, 969, 991, 992, 994, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 10, 24, 26, 32, 34, 36, 47, 50, 55, 65, 69, 81, 86, 92, 93, 98, 102, 105, 121, 125, 146, 150, 175, 197, 208, 226, 227, 229, 235, 241, 250, 256, 257, 266, 270, 276, 278, 286, 290, 293, 294, 296, 309, 315, 318, 320, 322, 325, 331, 336, 340, 346, 351, 353, 356, 360, 373, 374, 383, 385, 394, 401, 404, 407, 412, 415, 423, 448, 459, 467, 479, 484, 489, 503, 508, 516, 517, 523, 529, 554, 559, 563, 568, 569, 571, 579, 587, 588, 592, 593, 612, 625, 626, 634, 639, 647, 658, 660, 664, 665, 671, 679, 697, 709, 710, 712, 714, 717, 718, 722, 731, 732, 736, 737, 738, 755, 759, 765, 769, 773, 783, 787, 800, 801, 804, 809, 810, 820, 829, 832, 833, 834, 835, 858, 861, 873, 874, 883, 886, 923, 928, 933, 934, 956, 963, 964, 969, 991, 992, 994, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {36, 46, 57, 68, 124, 135, 145, 155, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958}
[INFO] [stdout] b items: {156}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(36, 959), fp: EncodedCountingMonoid(40, SumMonoid(20645)) }], item_sets: [ItemSet { range: Range(959, 36), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(959, 36), items: [], want_response: false }, ItemSet { range: Range(36, 959), items: [156], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(36, 959), items: [36, 46, 57, 68, 124, 135, 145, 155, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958], want_response: false }], wants: [156], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [36, 46, 57, 68, 124, 135, 145, 155, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958], provide: [(156, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(36, true), (46, true), (57, true), (68, true), (124, true), (135, true), (145, true), (155, true), (171, true), (201, true), (259, true), (300, true), (362, true), (402, true), (415, true), (475, true), (481, true), (487, true), (506, true), (507, true), (595, true), (612, true), (626, true), (632, true), (663, true), (670, true), (686, true), (699, true), (763, true), (777, true), (782, true), (793, true), (833, true), (845, true), (846, true), (853, true), (856, true), (905, true), (919, true), (958, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {36, 46, 57, 68, 124, 135, 145, 155, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958} + [156]
[INFO] [stdout] b all: {156} + [36, 46, 57, 68, 124, 135, 145, 155, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [36, 46, 57, 68, 124, 135, 145, 155, 156, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [36, 46, 57, 68, 124, 135, 145, 155, 156, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [36, 46, 57, 68, 124, 135, 145, 155, 156, 171, 201, 259, 300, 362, 402, 415, 475, 481, 487, 506, 507, 595, 612, 626, 632, 663, 670, 686, 699, 763, 777, 782, 793, 833, 845, 846, 853, 856, 905, 919, 958], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {24, 29, 118, 214, 272, 281, 308, 315, 337, 358, 573, 752, 758, 794, 807, 843, 854, 875, 895}
[INFO] [stdout] b items: {9, 30, 39, 46, 62, 78, 79, 96, 110, 137, 154, 195, 213, 216, 237, 239, 243, 247, 249, 254, 264, 267, 289, 294, 304, 305, 327, 336, 376, 379, 390, 397, 433, 434, 436, 440, 457, 471, 472, 485, 496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 582, 584, 610, 620, 622, 624, 633, 634, 646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 761, 782, 790, 794, 796, 805, 822, 844, 852, 890, 911, 934, 958, 964, 965, 979, 997, 998}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(24, 896), fp: EncodedCountingMonoid(19, SumMonoid(9407)) }], item_sets: [ItemSet { range: Range(896, 24), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(24, 496), fp: EncodedCountingMonoid(39, SumMonoid(10480)) }, Fingerprint { range: Range(496, 896), fp: EncodedCountingMonoid(39, SumMonoid(26040)) }], item_sets: [ItemSet { range: Range(896, 24), items: [911, 934, 958, 964, 965, 979, 997, 998, 9], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(24, 281), fp: EncodedCountingMonoid(5, SumMonoid(657)) }, Fingerprint { range: Range(281, 496), fp: EncodedCountingMonoid(5, SumMonoid(1599)) }, Fingerprint { range: Range(496, 843), fp: EncodedCountingMonoid(5, SumMonoid(3684)) }, Fingerprint { range: Range(843, 896), fp: EncodedCountingMonoid(4, SumMonoid(3467)) }], item_sets: [], wants: [911, 934, 958, 964, 965, 979, 997, 998, 9], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(24, 213), fp: EncodedCountingMonoid(11, SumMonoid(1026)) }, Fingerprint { range: Range(213, 281), fp: EncodedCountingMonoid(10, SumMonoid(2429)) }, Fingerprint { range: Range(281, 397), fp: EncodedCountingMonoid(9, SumMonoid(3000)) }, Fingerprint { range: Range(397, 496), fp: EncodedCountingMonoid(9, SumMonoid(4025)) }, Fingerprint { range: Range(496, 646), fp: EncodedCountingMonoid(18, SumMonoid(10246)) }, Fingerprint { range: Range(646, 843), fp: EncodedCountingMonoid(18, SumMonoid(13208)) }], item_sets: [ItemSet { range: Range(843, 890), items: [844, 852], want_response: true }, ItemSet { range: Range(890, 896), items: [890], want_response: true }], wants: [], provide: [(911, true), (934, true), (958, true), (964, true), (965, true), (979, true), (997, true), (998, true), (9, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(281, 337), fp: EncodedCountingMonoid(3, SumMonoid(904)) }], item_sets: [ItemSet { range: Range(843, 890), items: [843, 854, 875], want_response: false }, ItemSet { range: Range(890, 896), items: [895], want_response: false }, ItemSet { range: Range(24, 118), items: [24, 29], want_response: true }, ItemSet { range: Range(118, 213), items: [118], want_response: true }, ItemSet { range: Range(213, 281), items: [214, 272], want_response: true }, ItemSet { range: Range(337, 397), items: [337, 358], want_response: true }, ItemSet { range: Range(397, 496), items: [], want_response: true }, ItemSet { range: Range(496, 646), items: [573], want_response: true }, ItemSet { range: Range(646, 794), items: [752, 758], want_response: true }, ItemSet { range: Range(794, 843), items: [794, 807], want_response: true }], wants: [844, 852, 890], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(281, 305), fp: EncodedCountingMonoid(3, SumMonoid(887)) }, Fingerprint { range: Range(305, 337), fp: EncodedCountingMonoid(3, SumMonoid(968)) }], item_sets: [ItemSet { range: Range(24, 118), items: [30, 39, 46, 62, 78, 79, 96, 110], want_response: false }, ItemSet { range: Range(118, 213), items: [137, 154, 195], want_response: false }, ItemSet { range: Range(213, 281), items: [213, 216, 237, 239, 243, 247, 249, 254, 264, 267], want_response: false }, ItemSet { range: Range(337, 397), items: [376, 379, 390], want_response: false }, ItemSet { range: Range(397, 496), items: [397, 433, 434, 436, 440, 457, 471, 472, 485], want_response: false }, ItemSet { range: Range(496, 646), items: [496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 582, 584, 610, 620, 622, 624, 633, 634], want_response: false }, ItemSet { range: Range(646, 794), items: [646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 761, 782, 790], want_response: false }, ItemSet { range: Range(794, 843), items: [794, 796, 805, 822], want_response: false }], wants: [843, 854, 875, 895, 24, 29, 118, 214, 272, 337, 358, 573, 752, 758, 807], provide: [(844, true), (852, true), (890, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(281, 305), items: [281], want_response: true }, ItemSet { range: Range(305, 337), items: [308, 315], want_response: true }], wants: [30, 39, 46, 62, 78, 79, 96, 110, 137, 154, 195, 213, 216, 237, 239, 243, 247, 249, 254, 264, 267, 376, 379, 390, 397, 433, 434, 436, 440, 457, 471, 472, 485, 496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 582, 584, 610, 620, 622, 624, 633, 634, 646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 761, 782, 790, 796, 805, 822], provide: [(843, true), (854, true), (875, true), (895, true), (24, true), (29, true), (118, true), (214, true), (272, true), (337, true), (358, true), (573, true), (752, true), (758, true), (807, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(281, 305), items: [289, 294, 304], want_response: false }, ItemSet { range: Range(305, 337), items: [305, 327, 336], want_response: false }], wants: [281, 308, 315], provide: [(30, true), (39, true), (46, true), (62, true), (78, true), (79, true), (96, true), (110, true), (137, true), (154, true), (195, true), (213, true), (216, true), (237, true), (239, true), (243, true), (247, true), (249, true), (254, true), (264, true), (267, true), (376, true), (379, true), (390, true), (397, true), (433, true), (434, true), (436, true), (440, true), (457, true), (471, true), (472, true), (485, true), (496, true), (512, true), (519, true), (526, true), (530, true), (546, true), (547, true), (550, true), (553, true), (558, true), (582, true), (584, true), (610, true), (620, true), (622, true), (624, true), (633, true), (634, true), (646, true), (653, true), (655, true), (663, true), (666, true), (715, true), (719, true), (722, true), (730, true), (743, true), (746, true), (761, true), (782, true), (790, true), (796, true), (805, true), (822, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [289, 294, 304, 305, 327, 336], provide: [(281, true), (308, true), (315, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(289, true), (294, true), (304, true), (305, true), (327, true), (336, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {24, 29, 118, 214, 272, 281, 308, 315, 337, 358, 573, 752, 758, 794, 807, 843, 854, 875, 895} + [911, 934, 958, 964, 965, 979, 997, 998, 9, 844, 852, 890, 30, 39, 46, 62, 78, 79, 96, 110, 137, 154, 195, 213, 216, 237, 239, 243, 247, 249, 254, 264, 267, 376, 379, 390, 397, 433, 434, 436, 440, 457, 471, 472, 485, 496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 582, 584, 610, 620, 622, 624, 633, 634, 646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 761, 782, 790, 796, 805, 822, 289, 294, 304, 305, 327, 336]
[INFO] [stdout] b all: {9, 30, 39, 46, 62, 78, 79, 96, 110, 137, 154, 195, 213, 216, 237, 239, 243, 247, 249, 254, 264, 267, 289, 294, 304, 305, 327, 336, 376, 379, 390, 397, 433, 434, 436, 440, 457, 471, 472, 485, 496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 582, 584, 610, 620, 622, 624, 633, 634, 646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 761, 782, 790, 794, 796, 805, 822, 844, 852, 890, 911, 934, 958, 964, 965, 979, 997, 998} + [843, 854, 875, 895, 24, 29, 118, 214, 272, 337, 358, 573, 752, 758, 807, 281, 308, 315]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 24, 29, 30, 39, 46, 62, 78, 79, 96, 110, 118, 137, 154, 195, 213, 214, 216, 237, 239, 243, 247, 249, 254, 264, 267, 272, 281, 289, 294, 304, 305, 308, 315, 327, 336, 337, 358, 376, 379, 390, 397, 433, 434, 436, 440, 457, 471, 472, 485, 496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 573, 582, 584, 610, 620, 622, 624, 633, 634, 646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 752, 758, 761, 782, 790, 794, 796, 805, 807, 822, 843, 844, 852, 854, 875, 890, 895, 911, 934, 958, 964, 965, 979, 997, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 24, 29, 30, 39, 46, 62, 78, 79, 96, 110, 118, 137, 154, 195, 213, 214, 216, 237, 239, 243, 247, 249, 254, 264, 267, 272, 281, 289, 294, 304, 305, 308, 315, 327, 336, 337, 358, 376, 379, 390, 397, 433, 434, 436, 440, 457, 471, 472, 485, 496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 573, 582, 584, 610, 620, 622, 624, 633, 634, 646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 752, 758, 761, 782, 790, 794, 796, 805, 807, 822, 843, 844, 852, 854, 875, 890, 895, 911, 934, 958, 964, 965, 979, 997, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 24, 29, 30, 39, 46, 62, 78, 79, 96, 110, 118, 137, 154, 195, 213, 214, 216, 237, 239, 243, 247, 249, 254, 264, 267, 272, 281, 289, 294, 304, 305, 308, 315, 327, 336, 337, 358, 376, 379, 390, 397, 433, 434, 436, 440, 457, 471, 472, 485, 496, 512, 519, 526, 530, 546, 547, 550, 553, 558, 573, 582, 584, 610, 620, 622, 624, 633, 634, 646, 653, 655, 663, 666, 715, 719, 722, 730, 743, 746, 752, 758, 761, 782, 790, 794, 796, 805, 807, 822, 843, 844, 852, 854, 875, 890, 895, 911, 934, 958, 964, 965, 979, 997, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {67, 83, 102, 661, 679, 686, 691, 800, 994}
[INFO] [stdout] b items: {19, 50, 51, 62, 66, 74, 91, 111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617, 621, 623, 635, 643, 652, 661, 665, 670, 684, 700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 814, 817, 823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(67, 995), fp: EncodedCountingMonoid(9, SumMonoid(4763)) }], item_sets: [ItemSet { range: Range(995, 67), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(67, 621), fp: EncodedCountingMonoid(42, SumMonoid(15346)) }, Fingerprint { range: Range(621, 995), fp: EncodedCountingMonoid(42, SumMonoid(33059)) }], item_sets: [ItemSet { range: Range(995, 67), items: [19, 50, 51, 62, 66], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(621, 691), fp: EncodedCountingMonoid(3, SumMonoid(2026)) }, Fingerprint { range: Range(691, 995), fp: EncodedCountingMonoid(3, SumMonoid(2485)) }], item_sets: [ItemSet { range: Range(67, 102), items: [67, 83], want_response: true }, ItemSet { range: Range(102, 621), items: [102], want_response: true }], wants: [19, 50, 51, 62, 66], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(621, 661), fp: EncodedCountingMonoid(5, SumMonoid(3174)) }, Fingerprint { range: Range(661, 691), fp: EncodedCountingMonoid(4, SumMonoid(2680)) }, Fingerprint { range: Range(691, 823), fp: EncodedCountingMonoid(17, SumMonoid(12771)) }, Fingerprint { range: Range(823, 995), fp: EncodedCountingMonoid(16, SumMonoid(14434)) }], item_sets: [ItemSet { range: Range(67, 102), items: [74, 91], want_response: false }, ItemSet { range: Range(102, 621), items: [111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617], want_response: false }], wants: [67, 83, 102], provide: [(19, true), (50, true), (51, true), (62, true), (66, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(621, 661), items: [], want_response: true }, ItemSet { range: Range(661, 686), items: [661, 679], want_response: true }, ItemSet { range: Range(686, 691), items: [686], want_response: true }, ItemSet { range: Range(691, 823), items: [691, 800], want_response: true }, ItemSet { range: Range(823, 995), items: [994], want_response: true }], wants: [74, 91, 111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617], provide: [(67, true), (83, true), (102, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(621, 661), items: [621, 623, 635, 643, 652], want_response: false }, ItemSet { range: Range(661, 686), items: [661, 665, 670, 684], want_response: false }, ItemSet { range: Range(686, 691), items: [], want_response: false }, ItemSet { range: Range(691, 823), items: [700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 814, 817], want_response: false }, ItemSet { range: Range(823, 995), items: [823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982], want_response: false }], wants: [679, 686, 691, 800, 994], provide: [(74, true), (91, true), (111, true), (113, true), (124, true), (140, true), (160, true), (162, true), (182, true), (191, true), (223, true), (225, true), (248, true), (252, true), (256, true), (258, true), (293, true), (348, true), (357, true), (381, true), (398, true), (399, true), (422, true), (436, true), (437, true), (445, true), (450, true), (467, true), (485, true), (486, true), (504, true), (513, true), (529, true), (535, true), (545, true), (550, true), (555, true), (569, true), (590, true), (610, true), (615, true), (617, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [621, 623, 635, 643, 652, 665, 670, 684, 700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 814, 817, 823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982], provide: [(679, true), (686, true), (691, true), (800, true), (994, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(621, true), (623, true), (635, true), (643, true), (652, true), (665, true), (670, true), (684, true), (700, true), (707, true), (708, true), (710, true), (712, true), (728, true), (731, true), (752, true), (755, true), (760, true), (762, true), (764, true), (772, true), (785, true), (794, true), (814, true), (817, true), (823, true), (826, true), (832, true), (843, true), (844, true), (874, true), (890, true), (897, true), (904, true), (923, true), (935, true), (949, true), (965, true), (969, true), (978, true), (982, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {67, 83, 102, 661, 679, 686, 691, 800, 994} + [19, 50, 51, 62, 66, 74, 91, 111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617, 621, 623, 635, 643, 652, 665, 670, 684, 700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 814, 817, 823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982]
[INFO] [stdout] b all: {19, 50, 51, 62, 66, 74, 91, 111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617, 621, 623, 635, 643, 652, 661, 665, 670, 684, 700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 814, 817, 823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982} + [67, 83, 102, 679, 686, 691, 800, 994]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [19, 50, 51, 62, 66, 67, 74, 83, 91, 102, 111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617, 621, 623, 635, 643, 652, 661, 665, 670, 679, 684, 686, 691, 700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 800, 814, 817, 823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982, 994]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [19, 50, 51, 62, 66, 67, 74, 83, 91, 102, 111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617, 621, 623, 635, 643, 652, 661, 665, 670, 679, 684, 686, 691, 700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 800, 814, 817, 823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982, 994], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [19, 50, 51, 62, 66, 67, 74, 83, 91, 102, 111, 113, 124, 140, 160, 162, 182, 191, 223, 225, 248, 252, 256, 258, 293, 348, 357, 381, 398, 399, 422, 436, 437, 445, 450, 467, 485, 486, 504, 513, 529, 535, 545, 550, 555, 569, 590, 610, 615, 617, 621, 623, 635, 643, 652, 661, 665, 670, 679, 684, 686, 691, 700, 707, 708, 710, 712, 728, 731, 752, 755, 760, 762, 764, 772, 785, 794, 800, 814, 817, 823, 826, 832, 843, 844, 874, 890, 897, 904, 923, 935, 949, 965, 969, 978, 982, 994], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 143, 217, 222, 262, 287, 318, 381, 595, 639, 818, 831, 836, 905}
[INFO] [stdout] b items: {20, 28, 57, 62, 73, 76, 94, 107, 114, 115, 121, 179, 200, 207, 224, 227, 251, 256, 258, 269, 276, 280, 287, 289, 305, 313, 323, 336, 357, 411, 413, 423, 437, 440, 441, 442, 463, 467, 472, 517, 521, 527, 530, 531, 568, 578, 588, 589, 593, 618, 632, 641, 646, 669, 688, 693, 699, 707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 824, 843, 877, 893, 894, 897, 904, 913, 914, 934, 954, 963, 965, 972, 979, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 906), fp: EncodedCountingMonoid(14, SumMonoid(6463)) }], item_sets: [ItemSet { range: Range(906, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 521), fp: EncodedCountingMonoid(40, SumMonoid(10630)) }, Fingerprint { range: Range(521, 906), fp: EncodedCountingMonoid(39, SumMonoid(27837)) }], item_sets: [ItemSet { range: Range(906, 9), items: [913, 914, 934, 954, 963, 965, 972, 979, 997], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 262), fp: EncodedCountingMonoid(4, SumMonoid(591)) }, Fingerprint { range: Range(262, 521), fp: EncodedCountingMonoid(4, SumMonoid(1248)) }, Fingerprint { range: Range(521, 831), fp: EncodedCountingMonoid(3, SumMonoid(2052)) }, Fingerprint { range: Range(831, 906), fp: EncodedCountingMonoid(3, SumMonoid(2572)) }], item_sets: [], wants: [913, 914, 934, 954, 963, 965, 972, 979, 997], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 121), fp: EncodedCountingMonoid(10, SumMonoid(746)) }, Fingerprint { range: Range(121, 262), fp: EncodedCountingMonoid(9, SumMonoid(1923)) }, Fingerprint { range: Range(262, 413), fp: EncodedCountingMonoid(11, SumMonoid(3446)) }, Fingerprint { range: Range(413, 521), fp: EncodedCountingMonoid(10, SumMonoid(4515)) }, Fingerprint { range: Range(521, 707), fp: EncodedCountingMonoid(17, SumMonoid(10311)) }, Fingerprint { range: Range(707, 831), fp: EncodedCountingMonoid(16, SumMonoid(12218)) }, Fingerprint { range: Range(831, 894), fp: EncodedCountingMonoid(3, SumMonoid(2613)) }, Fingerprint { range: Range(894, 906), fp: EncodedCountingMonoid(3, SumMonoid(2695)) }], item_sets: [], wants: [], provide: [(913, true), (914, true), (934, true), (954, true), (963, true), (965, true), (972, true), (979, true), (997, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 121), items: [9], want_response: true }, ItemSet { range: Range(121, 222), items: [143, 217], want_response: true }, ItemSet { range: Range(222, 262), items: [222], want_response: true }, ItemSet { range: Range(262, 318), items: [262, 287], want_response: true }, ItemSet { range: Range(318, 413), items: [318, 381], want_response: true }, ItemSet { range: Range(413, 521), items: [], want_response: true }, ItemSet { range: Range(521, 707), items: [595, 639], want_response: true }, ItemSet { range: Range(707, 831), items: [818], want_response: true }, ItemSet { range: Range(831, 894), items: [831, 836], want_response: true }, ItemSet { range: Range(894, 906), items: [905], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 121), items: [20, 28, 57, 62, 73, 76, 94, 107, 114, 115], want_response: false }, ItemSet { range: Range(121, 222), items: [121, 179, 200, 207], want_response: false }, ItemSet { range: Range(222, 262), items: [224, 227, 251, 256, 258], want_response: false }, ItemSet { range: Range(262, 318), items: [269, 276, 280, 287, 289, 305, 313], want_response: false }, ItemSet { range: Range(318, 413), items: [323, 336, 357, 411], want_response: false }, ItemSet { range: Range(413, 521), items: [413, 423, 437, 440, 441, 442, 463, 467, 472, 517], want_response: false }, ItemSet { range: Range(521, 707), items: [521, 527, 530, 531, 568, 578, 588, 589, 593, 618, 632, 641, 646, 669, 688, 693, 699], want_response: false }, ItemSet { range: Range(707, 831), items: [707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 824], want_response: false }, ItemSet { range: Range(831, 894), items: [843, 877, 893], want_response: false }, ItemSet { range: Range(894, 906), items: [894, 897, 904], want_response: false }], wants: [9, 143, 217, 222, 262, 318, 381, 595, 639, 818, 831, 836, 905], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [20, 28, 57, 62, 73, 76, 94, 107, 114, 115, 121, 179, 200, 207, 224, 227, 251, 256, 258, 269, 276, 280, 289, 305, 313, 323, 336, 357, 411, 413, 423, 437, 440, 441, 442, 463, 467, 472, 517, 521, 527, 530, 531, 568, 578, 588, 589, 593, 618, 632, 641, 646, 669, 688, 693, 699, 707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 824, 843, 877, 893, 894, 897, 904], provide: [(9, true), (143, true), (217, true), (222, true), (262, true), (318, true), (381, true), (595, true), (639, true), (818, true), (831, true), (836, true), (905, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(20, true), (28, true), (57, true), (62, true), (73, true), (76, true), (94, true), (107, true), (114, true), (115, true), (121, true), (179, true), (200, true), (207, true), (224, true), (227, true), (251, true), (256, true), (258, true), (269, true), (276, true), (280, true), (289, true), (305, true), (313, true), (323, true), (336, true), (357, true), (411, true), (413, true), (423, true), (437, true), (440, true), (441, true), (442, true), (463, true), (467, true), (472, true), (517, true), (521, true), (527, true), (530, true), (531, true), (568, true), (578, true), (588, true), (589, true), (593, true), (618, true), (632, true), (641, true), (646, true), (669, true), (688, true), (693, true), (699, true), (707, true), (717, true), (718, true), (722, true), (726, true), (736, true), (744, true), (760, true), (762, true), (763, true), (793, true), (807, true), (811, true), (812, true), (816, true), (824, true), (843, true), (877, true), (893, true), (894, true), (897, true), (904, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 143, 217, 222, 262, 287, 318, 381, 595, 639, 818, 831, 836, 905} + [913, 914, 934, 954, 963, 965, 972, 979, 997, 20, 28, 57, 62, 73, 76, 94, 107, 114, 115, 121, 179, 200, 207, 224, 227, 251, 256, 258, 269, 276, 280, 289, 305, 313, 323, 336, 357, 411, 413, 423, 437, 440, 441, 442, 463, 467, 472, 517, 521, 527, 530, 531, 568, 578, 588, 589, 593, 618, 632, 641, 646, 669, 688, 693, 699, 707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 824, 843, 877, 893, 894, 897, 904]
[INFO] [stdout] b all: {20, 28, 57, 62, 73, 76, 94, 107, 114, 115, 121, 179, 200, 207, 224, 227, 251, 256, 258, 269, 276, 280, 287, 289, 305, 313, 323, 336, 357, 411, 413, 423, 437, 440, 441, 442, 463, 467, 472, 517, 521, 527, 530, 531, 568, 578, 588, 589, 593, 618, 632, 641, 646, 669, 688, 693, 699, 707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 824, 843, 877, 893, 894, 897, 904, 913, 914, 934, 954, 963, 965, 972, 979, 997} + [9, 143, 217, 222, 262, 318, 381, 595, 639, 818, 831, 836, 905]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 20, 28, 57, 62, 73, 76, 94, 107, 114, 115, 121, 143, 179, 200, 207, 217, 222, 224, 227, 251, 256, 258, 262, 269, 276, 280, 287, 289, 305, 313, 318, 323, 336, 357, 381, 411, 413, 423, 437, 440, 441, 442, 463, 467, 472, 517, 521, 527, 530, 531, 568, 578, 588, 589, 593, 595, 618, 632, 639, 641, 646, 669, 688, 693, 699, 707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 818, 824, 831, 836, 843, 877, 893, 894, 897, 904, 905, 913, 914, 934, 954, 963, 965, 972, 979, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 20, 28, 57, 62, 73, 76, 94, 107, 114, 115, 121, 143, 179, 200, 207, 217, 222, 224, 227, 251, 256, 258, 262, 269, 276, 280, 287, 289, 305, 313, 318, 323, 336, 357, 381, 411, 413, 423, 437, 440, 441, 442, 463, 467, 472, 517, 521, 527, 530, 531, 568, 578, 588, 589, 593, 595, 618, 632, 639, 641, 646, 669, 688, 693, 699, 707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 818, 824, 831, 836, 843, 877, 893, 894, 897, 904, 905, 913, 914, 934, 954, 963, 965, 972, 979, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 20, 28, 57, 62, 73, 76, 94, 107, 114, 115, 121, 143, 179, 200, 207, 217, 222, 224, 227, 251, 256, 258, 262, 269, 276, 280, 287, 289, 305, 313, 318, 323, 336, 357, 381, 411, 413, 423, 437, 440, 441, 442, 463, 467, 472, 517, 521, 527, 530, 531, 568, 578, 588, 589, 593, 595, 618, 632, 639, 641, 646, 669, 688, 693, 699, 707, 717, 718, 722, 726, 736, 744, 760, 762, 763, 793, 807, 811, 812, 816, 818, 824, 831, 836, 843, 877, 893, 894, 897, 904, 905, 913, 914, 934, 954, 963, 965, 972, 979, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 21, 22, 25, 32, 53, 125, 138, 162, 168, 199, 207, 216, 233, 248, 254, 284, 298, 310, 325, 354, 359, 363, 374, 375, 378, 381, 386, 427, 437, 439, 457, 461, 462, 466, 490, 524, 545, 546, 548, 566, 567, 569, 607, 624, 674, 679, 690, 691, 699, 709, 741, 752, 764, 772, 803, 809, 816, 896, 900, 927, 935, 961, 966, 970, 997}
[INFO] [stdout] b items: {5, 37, 112, 158, 184, 185, 200, 248, 274, 300, 303, 329, 343, 359, 401, 437, 486, 551, 593, 615, 622, 629, 671, 675, 689, 691, 715, 722, 778, 782, 796, 805, 808, 812, 826, 900, 921, 952, 964, 968}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 998), fp: EncodedCountingMonoid(66, SumMonoid(32180)) }], item_sets: [ItemSet { range: Range(998, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 622), fp: EncodedCountingMonoid(20, SumMonoid(6120)) }, Fingerprint { range: Range(622, 998), fp: EncodedCountingMonoid(20, SumMonoid(15726)) }], item_sets: [ItemSet { range: Range(998, 4), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 363), fp: EncodedCountingMonoid(22, SumMonoid(4037)) }, Fingerprint { range: Range(363, 622), fp: EncodedCountingMonoid(22, SumMonoid(10368)) }, Fingerprint { range: Range(622, 803), fp: EncodedCountingMonoid(11, SumMonoid(7795)) }, Fingerprint { range: Range(803, 998), fp: EncodedCountingMonoid(11, SumMonoid(9980)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 248), fp: EncodedCountingMonoid(7, SumMonoid(881)) }, Fingerprint { range: Range(248, 363), fp: EncodedCountingMonoid(7, SumMonoid(2156)) }, Fingerprint { range: Range(363, 551), fp: EncodedCountingMonoid(3, SumMonoid(1324)) }, Fingerprint { range: Range(551, 622), fp: EncodedCountingMonoid(3, SumMonoid(1759)) }, Fingerprint { range: Range(622, 715), fp: EncodedCountingMonoid(6, SumMonoid(3977)) }, Fingerprint { range: Range(715, 803), fp: EncodedCountingMonoid(5, SumMonoid(3793)) }, Fingerprint { range: Range(803, 921), fp: EncodedCountingMonoid(5, SumMonoid(4151)) }, Fingerprint { range: Range(921, 998), fp: EncodedCountingMonoid(4, SumMonoid(3805)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 138), fp: EncodedCountingMonoid(7, SumMonoid(282)) }, Fingerprint { range: Range(138, 248), fp: EncodedCountingMonoid(7, SumMonoid(1323)) }, Fingerprint { range: Range(248, 310), fp: EncodedCountingMonoid(4, SumMonoid(1084)) }, Fingerprint { range: Range(310, 363), fp: EncodedCountingMonoid(4, SumMonoid(1348)) }, Fingerprint { range: Range(363, 457), fp: EncodedCountingMonoid(9, SumMonoid(3560)) }, Fingerprint { range: Range(457, 551), fp: EncodedCountingMonoid(9, SumMonoid(4499)) }, Fingerprint { range: Range(622, 691), fp: EncodedCountingMonoid(4, SumMonoid(2667)) }, Fingerprint { range: Range(691, 715), fp: EncodedCountingMonoid(3, SumMonoid(2099)) }, Fingerprint { range: Range(803, 896), fp: EncodedCountingMonoid(3, SumMonoid(2428)) }, Fingerprint { range: Range(921, 966), fp: EncodedCountingMonoid(3, SumMonoid(2823)) }, Fingerprint { range: Range(966, 998), fp: EncodedCountingMonoid(3, SumMonoid(2933)) }], item_sets: [ItemSet { range: Range(551, 569), items: [566, 567], want_response: true }, ItemSet { range: Range(569, 622), items: [569, 607], want_response: true }, ItemSet { range: Range(715, 764), items: [741, 752], want_response: true }, ItemSet { range: Range(764, 803), items: [764, 772], want_response: true }, ItemSet { range: Range(896, 921), items: [896, 900], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(622, 675), fp: EncodedCountingMonoid(3, SumMonoid(1922)) }], item_sets: [ItemSet { range: Range(551, 569), items: [551], want_response: false }, ItemSet { range: Range(569, 622), items: [593, 615], want_response: false }, ItemSet { range: Range(715, 764), items: [715, 722], want_response: false }, ItemSet { range: Range(764, 803), items: [778, 782, 796], want_response: false }, ItemSet { range: Range(896, 921), items: [900], want_response: false }, ItemSet { range: Range(4, 112), items: [5, 37], want_response: true }, ItemSet { range: Range(112, 138), items: [112], want_response: true }, ItemSet { range: Range(138, 185), items: [158, 184], want_response: true }, ItemSet { range: Range(185, 248), items: [185, 200], want_response: true }, ItemSet { range: Range(248, 300), items: [248, 274], want_response: true }, ItemSet { range: Range(300, 310), items: [300, 303], want_response: true }, ItemSet { range: Range(310, 359), items: [329, 343], want_response: true }, ItemSet { range: Range(359, 363), items: [359], want_response: true }, ItemSet { range: Range(363, 457), items: [401, 437], want_response: true }, ItemSet { range: Range(457, 551), items: [486], want_response: true }, ItemSet { range: Range(675, 691), items: [675, 689], want_response: true }, ItemSet { range: Range(691, 715), items: [691], want_response: true }, ItemSet { range: Range(803, 812), items: [805, 808], want_response: true }, ItemSet { range: Range(812, 896), items: [812, 826], want_response: true }, ItemSet { range: Range(921, 964), items: [921, 952], want_response: true }, ItemSet { range: Range(964, 966), items: [964], want_response: true }, ItemSet { range: Range(966, 998), items: [968], want_response: true }], wants: [566, 567, 569, 607, 741, 752, 764, 772, 896], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 112), items: [4, 21, 22, 25, 32, 53], want_response: false }, ItemSet { range: Range(112, 138), items: [125], want_response: false }, ItemSet { range: Range(138, 185), items: [138, 162, 168], want_response: false }, ItemSet { range: Range(185, 248), items: [199, 207, 216, 233], want_response: false }, ItemSet { range: Range(248, 300), items: [248, 254, 284, 298], want_response: false }, ItemSet { range: Range(300, 310), items: [], want_response: false }, ItemSet { range: Range(310, 359), items: [310, 325, 354], want_response: false }, ItemSet { range: Range(359, 363), items: [359], want_response: false }, ItemSet { range: Range(363, 457), items: [363, 374, 375, 378, 381, 386, 427, 437, 439], want_response: false }, ItemSet { range: Range(457, 551), items: [457, 461, 462, 466, 490, 524, 545, 546, 548], want_response: false }, ItemSet { range: Range(675, 691), items: [679, 690], want_response: false }, ItemSet { range: Range(691, 715), items: [691, 699, 709], want_response: false }, ItemSet { range: Range(803, 812), items: [803, 809], want_response: false }, ItemSet { range: Range(812, 896), items: [816], want_response: false }, ItemSet { range: Range(921, 964), items: [927, 935, 961], want_response: false }, ItemSet { range: Range(964, 966), items: [], want_response: false }, ItemSet { range: Range(966, 998), items: [966, 970, 997], want_response: false }, ItemSet { range: Range(622, 675), items: [624, 674], want_response: true }], wants: [551, 593, 615, 715, 722, 778, 782, 796, 5, 37, 112, 158, 184, 185, 200, 274, 300, 303, 329, 343, 401, 486, 675, 689, 805, 808, 812, 826, 921, 952, 964, 968], provide: [(566, true), (567, true), (569, true), (607, true), (741, true), (752, true), (764, true), (772, true), (896, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(622, 675), items: [622, 629, 671], want_response: false }], wants: [4, 21, 22, 25, 32, 53, 125, 138, 162, 168, 199, 207, 216, 233, 254, 284, 298, 310, 325, 354, 363, 374, 375, 378, 381, 386, 427, 439, 457, 461, 462, 466, 490, 524, 545, 546, 548, 679, 690, 699, 709, 803, 809, 816, 927, 935, 961, 966, 970, 997, 624, 674], provide: [(551, true), (593, true), (615, true), (715, true), (722, true), (778, true), (782, true), (796, true), (5, true), (37, true), (112, true), (158, true), (184, true), (185, true), (200, true), (274, true), (300, true), (303, true), (329, true), (343, true), (401, true), (486, true), (675, true), (689, true), (805, true), (808, true), (812, true), (826, true), (921, true), (952, true), (964, true), (968, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [622, 629, 671], provide: [(4, true), (21, true), (22, true), (25, true), (32, true), (53, true), (125, true), (138, true), (162, true), (168, true), (199, true), (207, true), (216, true), (233, true), (254, true), (284, true), (298, true), (310, true), (325, true), (354, true), (363, true), (374, true), (375, true), (378, true), (381, true), (386, true), (427, true), (439, true), (457, true), (461, true), (462, true), (466, true), (490, true), (524, true), (545, true), (546, true), (548, true), (679, true), (690, true), (699, true), (709, true), (803, true), (809, true), (816, true), (927, true), (935, true), (961, true), (966, true), (970, true), (997, true), (624, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(622, true), (629, true), (671, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 21, 22, 25, 32, 53, 125, 138, 162, 168, 199, 207, 216, 233, 248, 254, 284, 298, 310, 325, 354, 359, 363, 374, 375, 378, 381, 386, 427, 437, 439, 457, 461, 462, 466, 490, 524, 545, 546, 548, 566, 567, 569, 607, 624, 674, 679, 690, 691, 699, 709, 741, 752, 764, 772, 803, 809, 816, 896, 900, 927, 935, 961, 966, 970, 997} + [551, 593, 615, 715, 722, 778, 782, 796, 5, 37, 112, 158, 184, 185, 200, 274, 300, 303, 329, 343, 401, 486, 675, 689, 805, 808, 812, 826, 921, 952, 964, 968, 622, 629, 671]
[INFO] [stdout] b all: {5, 37, 112, 158, 184, 185, 200, 248, 274, 300, 303, 329, 343, 359, 401, 437, 486, 551, 593, 615, 622, 629, 671, 675, 689, 691, 715, 722, 778, 782, 796, 805, 808, 812, 826, 900, 921, 952, 964, 968} + [566, 567, 569, 607, 741, 752, 764, 772, 896, 4, 21, 22, 25, 32, 53, 125, 138, 162, 168, 199, 207, 216, 233, 254, 284, 298, 310, 325, 354, 363, 374, 375, 378, 381, 386, 427, 439, 457, 461, 462, 466, 490, 524, 545, 546, 548, 679, 690, 699, 709, 803, 809, 816, 927, 935, 961, 966, 970, 997, 624, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 5, 21, 22, 25, 32, 37, 53, 112, 125, 138, 158, 162, 168, 184, 185, 199, 200, 207, 216, 233, 248, 254, 274, 284, 298, 300, 303, 310, 325, 329, 343, 354, 359, 363, 374, 375, 378, 381, 386, 401, 427, 437, 439, 457, 461, 462, 466, 486, 490, 524, 545, 546, 548, 551, 566, 567, 569, 593, 607, 615, 622, 624, 629, 671, 674, 675, 679, 689, 690, 691, 699, 709, 715, 722, 741, 752, 764, 772, 778, 782, 796, 803, 805, 808, 809, 812, 816, 826, 896, 900, 921, 927, 935, 952, 961, 964, 966, 968, 970, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 5, 21, 22, 25, 32, 37, 53, 112, 125, 138, 158, 162, 168, 184, 185, 199, 200, 207, 216, 233, 248, 254, 274, 284, 298, 300, 303, 310, 325, 329, 343, 354, 359, 363, 374, 375, 378, 381, 386, 401, 427, 437, 439, 457, 461, 462, 466, 486, 490, 524, 545, 546, 548, 551, 566, 567, 569, 593, 607, 615, 622, 624, 629, 671, 674, 675, 679, 689, 690, 691, 699, 709, 715, 722, 741, 752, 764, 772, 778, 782, 796, 803, 805, 808, 809, 812, 816, 826, 896, 900, 921, 927, 935, 952, 961, 964, 966, 968, 970, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 5, 21, 22, 25, 32, 37, 53, 112, 125, 138, 158, 162, 168, 184, 185, 199, 200, 207, 216, 233, 248, 254, 274, 284, 298, 300, 303, 310, 325, 329, 343, 354, 359, 363, 374, 375, 378, 381, 386, 401, 427, 437, 439, 457, 461, 462, 466, 486, 490, 524, 545, 546, 548, 551, 566, 567, 569, 593, 607, 615, 622, 624, 629, 671, 674, 675, 679, 689, 690, 691, 699, 709, 715, 722, 741, 752, 764, 772, 778, 782, 796, 803, 805, 808, 809, 812, 816, 826, 896, 900, 921, 927, 935, 952, 961, 964, 966, 968, 970, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 69, 115, 151, 335, 637, 645, 653, 655, 710, 716, 766, 837, 891}
[INFO] [stdout] b items: {264, 295, 446, 706, 746}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 892), fp: EncodedCountingMonoid(14, SumMonoid(7187)) }], item_sets: [ItemSet { range: Range(892, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 706), fp: EncodedCountingMonoid(3, SumMonoid(1005)) }], item_sets: [ItemSet { range: Range(892, 7), items: [], want_response: false }, ItemSet { range: Range(706, 892), items: [706, 746], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 637), fp: EncodedCountingMonoid(5, SumMonoid(677)) }, Fingerprint { range: Range(637, 706), fp: EncodedCountingMonoid(4, SumMonoid(2590)) }], item_sets: [ItemSet { range: Range(706, 892), items: [710, 716, 766, 837, 891], want_response: false }], wants: [706, 746], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 446), items: [264, 295], want_response: true }, ItemSet { range: Range(446, 637), items: [446], want_response: true }, ItemSet { range: Range(637, 706), items: [], want_response: true }], wants: [710, 716, 766, 837, 891], provide: [(706, true), (746, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 446), items: [7, 69, 115, 151, 335], want_response: false }, ItemSet { range: Range(446, 637), items: [], want_response: false }, ItemSet { range: Range(637, 706), items: [637, 645, 653, 655], want_response: false }], wants: [264, 295, 446], provide: [(710, true), (716, true), (766, true), (837, true), (891, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [7, 69, 115, 151, 335, 637, 645, 653, 655], provide: [(264, true), (295, true), (446, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (69, true), (115, true), (151, true), (335, true), (637, true), (645, true), (653, true), (655, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 69, 115, 151, 335, 637, 645, 653, 655, 710, 716, 766, 837, 891} + [706, 746, 264, 295, 446]
[INFO] [stdout] b all: {264, 295, 446, 706, 746} + [710, 716, 766, 837, 891, 7, 69, 115, 151, 335, 637, 645, 653, 655]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 69, 115, 151, 264, 295, 335, 446, 637, 645, 653, 655, 706, 710, 716, 746, 766, 837, 891]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 69, 115, 151, 264, 295, 335, 446, 637, 645, 653, 655, 706, 710, 716, 746, 766, 837, 891], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 69, 115, 151, 264, 295, 335, 446, 637, 645, 653, 655, 706, 710, 716, 746, 766, 837, 891], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {339, 400, 484, 878}
[INFO] [stdout] b items: {55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337, 339, 377, 400, 456, 457, 464, 503, 527, 576, 600, 605, 624, 643, 647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867, 882, 927, 931, 933, 948, 950, 969}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(339, 879), fp: EncodedCountingMonoid(4, SumMonoid(2101)) }], item_sets: [ItemSet { range: Range(879, 339), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(339, 647), fp: EncodedCountingMonoid(13, SumMonoid(6571)) }, Fingerprint { range: Range(647, 879), fp: EncodedCountingMonoid(13, SumMonoid(9930)) }], item_sets: [ItemSet { range: Range(879, 339), items: [882, 927, 931, 933, 948, 950, 969, 55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(339, 484), items: [339, 400], want_response: true }, ItemSet { range: Range(484, 647), items: [484], want_response: true }, ItemSet { range: Range(647, 879), items: [878], want_response: true }], wants: [882, 927, 931, 933, 948, 950, 969, 55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(339, 484), items: [339, 377, 400, 456, 457, 464], want_response: false }, ItemSet { range: Range(484, 647), items: [503, 527, 576, 600, 605, 624, 643], want_response: false }, ItemSet { range: Range(647, 879), items: [647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867], want_response: false }], wants: [484, 878], provide: [(882, true), (927, true), (931, true), (933, true), (948, true), (950, true), (969, true), (55, true), (72, true), (78, true), (92, true), (115, true), (130, true), (138, true), (152, true), (167, true), (178, true), (193, true), (215, true), (248, true), (258, true), (266, true), (277, true), (280, true), (281, true), (316, true), (337, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [377, 456, 457, 464, 503, 527, 576, 600, 605, 624, 643, 647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867], provide: [(484, true), (878, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(377, true), (456, true), (457, true), (464, true), (503, true), (527, true), (576, true), (600, true), (605, true), (624, true), (643, true), (647, true), (663, true), (695, true), (709, true), (718, true), (722, true), (754, true), (773, true), (796, true), (859, true), (862, true), (865, true), (867, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {339, 400, 484, 878} + [882, 927, 931, 933, 948, 950, 969, 55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337, 377, 456, 457, 464, 503, 527, 576, 600, 605, 624, 643, 647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867]
[INFO] [stdout] b all: {55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337, 339, 377, 400, 456, 457, 464, 503, 527, 576, 600, 605, 624, 643, 647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867, 882, 927, 931, 933, 948, 950, 969} + [484, 878]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337, 339, 377, 400, 456, 457, 464, 484, 503, 527, 576, 600, 605, 624, 643, 647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867, 878, 882, 927, 931, 933, 948, 950, 969]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337, 339, 377, 400, 456, 457, 464, 484, 503, 527, 576, 600, 605, 624, 643, 647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867, 878, 882, 927, 931, 933, 948, 950, 969], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [55, 72, 78, 92, 115, 130, 138, 152, 167, 178, 193, 215, 248, 258, 266, 277, 280, 281, 316, 337, 339, 377, 400, 456, 457, 464, 484, 503, 527, 576, 600, 605, 624, 643, 647, 663, 695, 709, 718, 722, 754, 773, 796, 859, 862, 865, 867, 878, 882, 927, 931, 933, 948, 950, 969], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {26, 34, 58, 60, 67, 73, 102, 105, 118, 119, 127, 133, 162, 216, 219, 227, 231, 245, 264, 290, 294, 319, 337, 339, 363, 366, 369, 389, 392, 402, 408, 410, 422, 428, 496, 504, 523, 533, 563, 587, 595, 602, 606, 607, 629, 646, 660, 661, 664, 681, 698, 709, 713, 721, 735, 788, 804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 898, 908, 966, 967, 970, 971}
[INFO] [stdout] b items: {20, 57, 64, 118, 172, 251, 309, 325, 350, 366, 426, 455, 484, 535, 575, 582, 596, 659, 678, 724, 777, 778, 780, 895}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(26, 972), fp: EncodedCountingMonoid(73, SumMonoid(37022)) }], item_sets: [ItemSet { range: Range(972, 26), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(26, 535), fp: EncodedCountingMonoid(12, SumMonoid(3377)) }, Fingerprint { range: Range(535, 972), fp: EncodedCountingMonoid(11, SumMonoid(7579)) }], item_sets: [ItemSet { range: Range(972, 26), items: [20], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(26, 290), fp: EncodedCountingMonoid(19, SumMonoid(2586)) }, Fingerprint { range: Range(290, 535), fp: EncodedCountingMonoid(19, SumMonoid(7584)) }, Fingerprint { range: Range(535, 804), fp: EncodedCountingMonoid(18, SumMonoid(11865)) }, Fingerprint { range: Range(804, 972), fp: EncodedCountingMonoid(17, SumMonoid(14987)) }], item_sets: [], wants: [20], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(26, 172), fp: EncodedCountingMonoid(3, SumMonoid(239)) }, Fingerprint { range: Range(290, 426), fp: EncodedCountingMonoid(4, SumMonoid(1350)) }, Fingerprint { range: Range(426, 535), fp: EncodedCountingMonoid(3, SumMonoid(1365)) }, Fingerprint { range: Range(535, 678), fp: EncodedCountingMonoid(5, SumMonoid(2947)) }, Fingerprint { range: Range(678, 804), fp: EncodedCountingMonoid(5, SumMonoid(3737)) }], item_sets: [ItemSet { range: Range(172, 290), items: [172, 251], want_response: true }, ItemSet { range: Range(804, 972), items: [895], want_response: true }], wants: [], provide: [(20, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(26, 105), fp: EncodedCountingMonoid(7, SumMonoid(420)) }, Fingerprint { range: Range(105, 172), fp: EncodedCountingMonoid(6, SumMonoid(764)) }, Fingerprint { range: Range(290, 369), fp: EncodedCountingMonoid(7, SumMonoid(2308)) }, Fingerprint { range: Range(369, 426), fp: EncodedCountingMonoid(7, SumMonoid(2792)) }, Fingerprint { range: Range(426, 523), fp: EncodedCountingMonoid(3, SumMonoid(1428)) }, Fingerprint { range: Range(535, 629), fp: EncodedCountingMonoid(6, SumMonoid(3560)) }, Fingerprint { range: Range(629, 678), fp: EncodedCountingMonoid(5, SumMonoid(3260)) }, Fingerprint { range: Range(678, 721), fp: EncodedCountingMonoid(4, SumMonoid(2801)) }, Fingerprint { range: Range(721, 804), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }], item_sets: [ItemSet { range: Range(172, 290), items: [216, 219, 227, 231, 245, 264], want_response: false }, ItemSet { range: Range(804, 972), items: [804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 898, 908, 966, 967, 970, 971], want_response: false }, ItemSet { range: Range(523, 535), items: [523, 533], want_response: true }], wants: [172, 251, 895], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 535), items: [], want_response: false }, ItemSet { range: Range(26, 105), items: [57, 64], want_response: true }, ItemSet { range: Range(105, 172), items: [118], want_response: true }, ItemSet { range: Range(290, 350), items: [309, 325], want_response: true }, ItemSet { range: Range(350, 369), items: [350, 366], want_response: true }, ItemSet { range: Range(369, 426), items: [], want_response: true }, ItemSet { range: Range(426, 484), items: [426, 455], want_response: true }, ItemSet { range: Range(484, 523), items: [484], want_response: true }, ItemSet { range: Range(535, 582), items: [535, 575], want_response: true }, ItemSet { range: Range(582, 629), items: [582, 596], want_response: true }, ItemSet { range: Range(629, 678), items: [659], want_response: true }, ItemSet { range: Range(678, 721), items: [678], want_response: true }, ItemSet { range: Range(721, 778), items: [724, 777], want_response: true }, ItemSet { range: Range(778, 804), items: [778, 780], want_response: true }], wants: [216, 219, 227, 231, 245, 264, 804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 898, 908, 966, 967, 970, 971, 523, 533], provide: [(172, true), (251, true), (895, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(26, 105), items: [26, 34, 58, 60, 67, 73, 102], want_response: false }, ItemSet { range: Range(105, 172), items: [105, 118, 119, 127, 133, 162], want_response: false }, ItemSet { range: Range(290, 350), items: [290, 294, 319, 337, 339], want_response: false }, ItemSet { range: Range(350, 369), items: [363, 366], want_response: false }, ItemSet { range: Range(369, 426), items: [369, 389, 392, 402, 408, 410, 422], want_response: false }, ItemSet { range: Range(426, 484), items: [428], want_response: false }, ItemSet { range: Range(484, 523), items: [496, 504], want_response: false }, ItemSet { range: Range(535, 582), items: [563], want_response: false }, ItemSet { range: Range(582, 629), items: [587, 595, 602, 606, 607], want_response: false }, ItemSet { range: Range(629, 678), items: [629, 646, 660, 661, 664], want_response: false }, ItemSet { range: Range(678, 721), items: [681, 698, 709, 713], want_response: false }, ItemSet { range: Range(721, 778), items: [721, 735], want_response: false }, ItemSet { range: Range(778, 804), items: [788], want_response: false }], wants: [57, 64, 309, 325, 350, 426, 455, 484, 535, 575, 582, 596, 659, 678, 724, 777, 778, 780], provide: [(216, true), (219, true), (227, true), (231, true), (245, true), (264, true), (804, true), (814, true), (817, true), (818, true), (828, true), (838, true), (843, true), (879, true), (886, true), (888, true), (892, true), (898, true), (908, true), (966, true), (967, true), (970, true), (971, true), (523, true), (533, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [26, 34, 58, 60, 67, 73, 102, 105, 119, 127, 133, 162, 290, 294, 319, 337, 339, 363, 369, 389, 392, 402, 408, 410, 422, 428, 496, 504, 563, 587, 595, 602, 606, 607, 629, 646, 660, 661, 664, 681, 698, 709, 713, 721, 735, 788], provide: [(57, true), (64, true), (309, true), (325, true), (350, true), (426, true), (455, true), (484, true), (535, true), (575, true), (582, true), (596, true), (659, true), (678, true), (724, true), (777, true), (778, true), (780, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(26, true), (34, true), (58, true), (60, true), (67, true), (73, true), (102, true), (105, true), (119, true), (127, true), (133, true), (162, true), (290, true), (294, true), (319, true), (337, true), (339, true), (363, true), (369, true), (389, true), (392, true), (402, true), (408, true), (410, true), (422, true), (428, true), (496, true), (504, true), (563, true), (587, true), (595, true), (602, true), (606, true), (607, true), (629, true), (646, true), (660, true), (661, true), (664, true), (681, true), (698, true), (709, true), (713, true), (721, true), (735, true), (788, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {26, 34, 58, 60, 67, 73, 102, 105, 118, 119, 127, 133, 162, 216, 219, 227, 231, 245, 264, 290, 294, 319, 337, 339, 363, 366, 369, 389, 392, 402, 408, 410, 422, 428, 496, 504, 523, 533, 563, 587, 595, 602, 606, 607, 629, 646, 660, 661, 664, 681, 698, 709, 713, 721, 735, 788, 804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 898, 908, 966, 967, 970, 971} + [20, 172, 251, 895, 57, 64, 309, 325, 350, 426, 455, 484, 535, 575, 582, 596, 659, 678, 724, 777, 778, 780]
[INFO] [stdout] b all: {20, 57, 64, 118, 172, 251, 309, 325, 350, 366, 426, 455, 484, 535, 575, 582, 596, 659, 678, 724, 777, 778, 780, 895} + [216, 219, 227, 231, 245, 264, 804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 898, 908, 966, 967, 970, 971, 523, 533, 26, 34, 58, 60, 67, 73, 102, 105, 119, 127, 133, 162, 290, 294, 319, 337, 339, 363, 369, 389, 392, 402, 408, 410, 422, 428, 496, 504, 563, 587, 595, 602, 606, 607, 629, 646, 660, 661, 664, 681, 698, 709, 713, 721, 735, 788]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [20, 26, 34, 57, 58, 60, 64, 67, 73, 102, 105, 118, 119, 127, 133, 162, 172, 216, 219, 227, 231, 245, 251, 264, 290, 294, 309, 319, 325, 337, 339, 350, 363, 366, 369, 389, 392, 402, 408, 410, 422, 426, 428, 455, 484, 496, 504, 523, 533, 535, 563, 575, 582, 587, 595, 596, 602, 606, 607, 629, 646, 659, 660, 661, 664, 678, 681, 698, 709, 713, 721, 724, 735, 777, 778, 780, 788, 804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 895, 898, 908, 966, 967, 970, 971]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [20, 26, 34, 57, 58, 60, 64, 67, 73, 102, 105, 118, 119, 127, 133, 162, 172, 216, 219, 227, 231, 245, 251, 264, 290, 294, 309, 319, 325, 337, 339, 350, 363, 366, 369, 389, 392, 402, 408, 410, 422, 426, 428, 455, 484, 496, 504, 523, 533, 535, 563, 575, 582, 587, 595, 596, 602, 606, 607, 629, 646, 659, 660, 661, 664, 678, 681, 698, 709, 713, 721, 724, 735, 777, 778, 780, 788, 804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 895, 898, 908, 966, 967, 970, 971], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [20, 26, 34, 57, 58, 60, 64, 67, 73, 102, 105, 118, 119, 127, 133, 162, 172, 216, 219, 227, 231, 245, 251, 264, 290, 294, 309, 319, 325, 337, 339, 350, 363, 366, 369, 389, 392, 402, 408, 410, 422, 426, 428, 455, 484, 496, 504, 523, 533, 535, 563, 575, 582, 587, 595, 596, 602, 606, 607, 629, 646, 659, 660, 661, 664, 678, 681, 698, 709, 713, 721, 724, 735, 777, 778, 780, 788, 804, 814, 817, 818, 828, 838, 843, 879, 886, 888, 892, 895, 898, 908, 966, 967, 970, 971], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {74, 101, 112, 114, 167, 287, 299, 340, 396, 405, 472, 515, 598, 701, 703, 737, 739, 816, 833, 887, 889, 909}
[INFO] [stdout] b items: {7, 22, 23, 41, 42, 43, 45, 51, 55, 73, 75, 87, 90, 94, 100, 114, 120, 132, 146, 160, 193, 239, 244, 270, 306, 316, 325, 326, 334, 337, 356, 367, 373, 383, 395, 400, 406, 409, 427, 444, 450, 507, 515, 549, 567, 609, 636, 650, 662, 674, 695, 708, 737, 745, 804, 815, 828, 841, 865, 876, 897, 901, 917, 931, 942, 966, 970, 977, 995}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(74, 910), fp: EncodedCountingMonoid(22, SumMonoid(11094)) }], item_sets: [ItemSet { range: Range(910, 74), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(74, 406), fp: EncodedCountingMonoid(26, SumMonoid(6282)) }, Fingerprint { range: Range(406, 910), fp: EncodedCountingMonoid(26, SumMonoid(17217)) }], item_sets: [ItemSet { range: Range(910, 74), items: [917, 931, 942, 966, 970, 977, 995, 7, 22, 23, 41, 42, 43, 45, 51, 55, 73], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(74, 287), fp: EncodedCountingMonoid(5, SumMonoid(568)) }, Fingerprint { range: Range(287, 406), fp: EncodedCountingMonoid(5, SumMonoid(1727)) }, Fingerprint { range: Range(406, 739), fp: EncodedCountingMonoid(6, SumMonoid(3726)) }, Fingerprint { range: Range(739, 910), fp: EncodedCountingMonoid(6, SumMonoid(5073)) }], item_sets: [], wants: [917, 931, 942, 966, 970, 977, 995, 7, 22, 23, 41, 42, 43, 45, 51, 55, 73], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(74, 132), fp: EncodedCountingMonoid(7, SumMonoid(680)) }, Fingerprint { range: Range(132, 287), fp: EncodedCountingMonoid(7, SumMonoid(1384)) }, Fingerprint { range: Range(287, 356), fp: EncodedCountingMonoid(6, SumMonoid(1944)) }, Fingerprint { range: Range(356, 406), fp: EncodedCountingMonoid(6, SumMonoid(2274)) }, Fingerprint { range: Range(406, 609), fp: EncodedCountingMonoid(9, SumMonoid(4274)) }, Fingerprint { range: Range(609, 739), fp: EncodedCountingMonoid(8, SumMonoid(5371)) }, Fingerprint { range: Range(739, 865), fp: EncodedCountingMonoid(5, SumMonoid(4033)) }, Fingerprint { range: Range(865, 910), fp: EncodedCountingMonoid(4, SumMonoid(3539)) }], item_sets: [], wants: [], provide: [(917, true), (931, true), (942, true), (966, true), (970, true), (977, true), (995, true), (7, true), (22, true), (23, true), (41, true), (42, true), (43, true), (45, true), (51, true), (55, true), (73, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(74, 112), items: [74, 101], want_response: true }, ItemSet { range: Range(112, 132), items: [112, 114], want_response: true }, ItemSet { range: Range(132, 287), items: [167], want_response: true }, ItemSet { range: Range(287, 340), items: [287, 299], want_response: true }, ItemSet { range: Range(340, 356), items: [340], want_response: true }, ItemSet { range: Range(356, 406), items: [396, 405], want_response: true }, ItemSet { range: Range(406, 598), items: [472, 515], want_response: true }, ItemSet { range: Range(598, 609), items: [598], want_response: true }, ItemSet { range: Range(609, 737), items: [701, 703], want_response: true }, ItemSet { range: Range(737, 739), items: [737], want_response: true }, ItemSet { range: Range(739, 833), items: [739, 816], want_response: true }, ItemSet { range: Range(833, 865), items: [833], want_response: true }, ItemSet { range: Range(865, 909), items: [887, 889], want_response: true }, ItemSet { range: Range(909, 910), items: [909], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(74, 112), items: [75, 87, 90, 94, 100], want_response: false }, ItemSet { range: Range(112, 132), items: [114, 120], want_response: false }, ItemSet { range: Range(132, 287), items: [132, 146, 160, 193, 239, 244, 270], want_response: false }, ItemSet { range: Range(287, 340), items: [306, 316, 325, 326, 334, 337], want_response: false }, ItemSet { range: Range(340, 356), items: [], want_response: false }, ItemSet { range: Range(356, 406), items: [356, 367, 373, 383, 395, 400], want_response: false }, ItemSet { range: Range(406, 598), items: [406, 409, 427, 444, 450, 507, 515, 549, 567], want_response: false }, ItemSet { range: Range(598, 609), items: [], want_response: false }, ItemSet { range: Range(609, 737), items: [609, 636, 650, 662, 674, 695, 708], want_response: false }, ItemSet { range: Range(737, 739), items: [737], want_response: false }, ItemSet { range: Range(739, 833), items: [745, 804, 815, 828], want_response: false }, ItemSet { range: Range(833, 865), items: [841], want_response: false }, ItemSet { range: Range(865, 909), items: [865, 876, 897, 901], want_response: false }, ItemSet { range: Range(909, 910), items: [], want_response: false }], wants: [74, 101, 112, 167, 287, 299, 340, 396, 405, 472, 598, 701, 703, 739, 816, 833, 887, 889, 909], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [75, 87, 90, 94, 100, 120, 132, 146, 160, 193, 239, 244, 270, 306, 316, 325, 326, 334, 337, 356, 367, 373, 383, 395, 400, 406, 409, 427, 444, 450, 507, 549, 567, 609, 636, 650, 662, 674, 695, 708, 745, 804, 815, 828, 841, 865, 876, 897, 901], provide: [(74, true), (101, true), (112, true), (167, true), (287, true), (299, true), (340, true), (396, true), (405, true), (472, true), (598, true), (701, true), (703, true), (739, true), (816, true), (833, true), (887, true), (889, true), (909, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(75, true), (87, true), (90, true), (94, true), (100, true), (120, true), (132, true), (146, true), (160, true), (193, true), (239, true), (244, true), (270, true), (306, true), (316, true), (325, true), (326, true), (334, true), (337, true), (356, true), (367, true), (373, true), (383, true), (395, true), (400, true), (406, true), (409, true), (427, true), (444, true), (450, true), (507, true), (549, true), (567, true), (609, true), (636, true), (650, true), (662, true), (674, true), (695, true), (708, true), (745, true), (804, true), (815, true), (828, true), (841, true), (865, true), (876, true), (897, true), (901, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {74, 101, 112, 114, 167, 287, 299, 340, 396, 405, 472, 515, 598, 701, 703, 737, 739, 816, 833, 887, 889, 909} + [917, 931, 942, 966, 970, 977, 995, 7, 22, 23, 41, 42, 43, 45, 51, 55, 73, 75, 87, 90, 94, 100, 120, 132, 146, 160, 193, 239, 244, 270, 306, 316, 325, 326, 334, 337, 356, 367, 373, 383, 395, 400, 406, 409, 427, 444, 450, 507, 549, 567, 609, 636, 650, 662, 674, 695, 708, 745, 804, 815, 828, 841, 865, 876, 897, 901]
[INFO] [stdout] b all: {7, 22, 23, 41, 42, 43, 45, 51, 55, 73, 75, 87, 90, 94, 100, 114, 120, 132, 146, 160, 193, 239, 244, 270, 306, 316, 325, 326, 334, 337, 356, 367, 373, 383, 395, 400, 406, 409, 427, 444, 450, 507, 515, 549, 567, 609, 636, 650, 662, 674, 695, 708, 737, 745, 804, 815, 828, 841, 865, 876, 897, 901, 917, 931, 942, 966, 970, 977, 995} + [74, 101, 112, 167, 287, 299, 340, 396, 405, 472, 598, 701, 703, 739, 816, 833, 887, 889, 909]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 22, 23, 41, 42, 43, 45, 51, 55, 73, 74, 75, 87, 90, 94, 100, 101, 112, 114, 120, 132, 146, 160, 167, 193, 239, 244, 270, 287, 299, 306, 316, 325, 326, 334, 337, 340, 356, 367, 373, 383, 395, 396, 400, 405, 406, 409, 427, 444, 450, 472, 507, 515, 549, 567, 598, 609, 636, 650, 662, 674, 695, 701, 703, 708, 737, 739, 745, 804, 815, 816, 828, 833, 841, 865, 876, 887, 889, 897, 901, 909, 917, 931, 942, 966, 970, 977, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 22, 23, 41, 42, 43, 45, 51, 55, 73, 74, 75, 87, 90, 94, 100, 101, 112, 114, 120, 132, 146, 160, 167, 193, 239, 244, 270, 287, 299, 306, 316, 325, 326, 334, 337, 340, 356, 367, 373, 383, 395, 396, 400, 405, 406, 409, 427, 444, 450, 472, 507, 515, 549, 567, 598, 609, 636, 650, 662, 674, 695, 701, 703, 708, 737, 739, 745, 804, 815, 816, 828, 833, 841, 865, 876, 887, 889, 897, 901, 909, 917, 931, 942, 966, 970, 977, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 22, 23, 41, 42, 43, 45, 51, 55, 73, 74, 75, 87, 90, 94, 100, 101, 112, 114, 120, 132, 146, 160, 167, 193, 239, 244, 270, 287, 299, 306, 316, 325, 326, 334, 337, 340, 356, 367, 373, 383, 395, 396, 400, 405, 406, 409, 427, 444, 450, 472, 507, 515, 549, 567, 598, 609, 636, 650, 662, 674, 695, 701, 703, 708, 737, 739, 745, 804, 815, 816, 828, 833, 841, 865, 876, 887, 889, 897, 901, 909, 917, 931, 942, 966, 970, 977, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {116, 192, 278, 286, 316, 461, 498, 526, 626, 679, 735, 875, 901}
[INFO] [stdout] b items: {12, 32, 118, 127, 129, 245, 277, 370, 375, 422, 442, 452, 513, 545, 602, 604, 635, 694, 695, 729, 743, 749, 754, 778, 789, 800, 858, 882, 908, 911, 919, 947, 985}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(116, 902), fp: EncodedCountingMonoid(13, SumMonoid(6489)) }], item_sets: [ItemSet { range: Range(902, 116), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(116, 604), fp: EncodedCountingMonoid(13, SumMonoid(4617)) }, Fingerprint { range: Range(604, 902), fp: EncodedCountingMonoid(13, SumMonoid(9710)) }], item_sets: [ItemSet { range: Range(902, 116), items: [908, 911, 919, 947, 985, 12, 32], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(116, 316), fp: EncodedCountingMonoid(4, SumMonoid(872)) }, Fingerprint { range: Range(316, 604), fp: EncodedCountingMonoid(4, SumMonoid(1801)) }, Fingerprint { range: Range(604, 875), fp: EncodedCountingMonoid(3, SumMonoid(2040)) }], item_sets: [ItemSet { range: Range(875, 902), items: [875, 901], want_response: true }], wants: [908, 911, 919, 947, 985, 12, 32], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(116, 245), fp: EncodedCountingMonoid(3, SumMonoid(374)) }, Fingerprint { range: Range(316, 452), fp: EncodedCountingMonoid(4, SumMonoid(1609)) }, Fingerprint { range: Range(452, 604), fp: EncodedCountingMonoid(4, SumMonoid(2112)) }, Fingerprint { range: Range(604, 749), fp: EncodedCountingMonoid(6, SumMonoid(4100)) }, Fingerprint { range: Range(749, 875), fp: EncodedCountingMonoid(6, SumMonoid(4728)) }], item_sets: [ItemSet { range: Range(875, 902), items: [882], want_response: false }, ItemSet { range: Range(245, 316), items: [245, 277], want_response: true }], wants: [875, 901], provide: [(908, true), (911, true), (919, true), (947, true), (985, true), (12, true), (32, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(245, 316), items: [278, 286], want_response: false }, ItemSet { range: Range(116, 245), items: [116, 192], want_response: true }, ItemSet { range: Range(316, 452), items: [316], want_response: true }, ItemSet { range: Range(452, 526), items: [461, 498], want_response: true }, ItemSet { range: Range(526, 604), items: [526], want_response: true }, ItemSet { range: Range(604, 735), items: [626, 679], want_response: true }, ItemSet { range: Range(735, 749), items: [735], want_response: true }, ItemSet { range: Range(749, 875), items: [], want_response: true }], wants: [882, 245, 277], provide: [(875, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(116, 245), items: [118, 127, 129], want_response: false }, ItemSet { range: Range(316, 452), items: [370, 375, 422, 442], want_response: false }, ItemSet { range: Range(452, 526), items: [452, 513], want_response: false }, ItemSet { range: Range(526, 604), items: [545, 602], want_response: false }, ItemSet { range: Range(604, 735), items: [604, 635, 694, 695, 729], want_response: false }, ItemSet { range: Range(735, 749), items: [743], want_response: false }, ItemSet { range: Range(749, 875), items: [749, 754, 778, 789, 800, 858], want_response: false }], wants: [278, 286, 116, 192, 316, 461, 498, 526, 626, 679, 735], provide: [(882, true), (245, true), (277, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [118, 127, 129, 370, 375, 422, 442, 452, 513, 545, 602, 604, 635, 694, 695, 729, 743, 749, 754, 778, 789, 800, 858], provide: [(278, true), (286, true), (116, true), (192, true), (316, true), (461, true), (498, true), (526, true), (626, true), (679, true), (735, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(118, true), (127, true), (129, true), (370, true), (375, true), (422, true), (442, true), (452, true), (513, true), (545, true), (602, true), (604, true), (635, true), (694, true), (695, true), (729, true), (743, true), (749, true), (754, true), (778, true), (789, true), (800, true), (858, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {116, 192, 278, 286, 316, 461, 498, 526, 626, 679, 735, 875, 901} + [908, 911, 919, 947, 985, 12, 32, 882, 245, 277, 118, 127, 129, 370, 375, 422, 442, 452, 513, 545, 602, 604, 635, 694, 695, 729, 743, 749, 754, 778, 789, 800, 858]
[INFO] [stdout] b all: {12, 32, 118, 127, 129, 245, 277, 370, 375, 422, 442, 452, 513, 545, 602, 604, 635, 694, 695, 729, 743, 749, 754, 778, 789, 800, 858, 882, 908, 911, 919, 947, 985} + [875, 901, 278, 286, 116, 192, 316, 461, 498, 526, 626, 679, 735]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [12, 32, 116, 118, 127, 129, 192, 245, 277, 278, 286, 316, 370, 375, 422, 442, 452, 461, 498, 513, 526, 545, 602, 604, 626, 635, 679, 694, 695, 729, 735, 743, 749, 754, 778, 789, 800, 858, 875, 882, 901, 908, 911, 919, 947, 985]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [12, 32, 116, 118, 127, 129, 192, 245, 277, 278, 286, 316, 370, 375, 422, 442, 452, 461, 498, 513, 526, 545, 602, 604, 626, 635, 679, 694, 695, 729, 735, 743, 749, 754, 778, 789, 800, 858, 875, 882, 901, 908, 911, 919, 947, 985], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [12, 32, 116, 118, 127, 129, 192, 245, 277, 278, 286, 316, 370, 375, 422, 442, 452, 461, 498, 513, 526, 545, 602, 604, 626, 635, 679, 694, 695, 729, 735, 743, 749, 754, 778, 789, 800, 858, 875, 882, 901, 908, 911, 919, 947, 985], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {71, 109, 203, 258, 398, 526, 535, 566, 805}
[INFO] [stdout] b items: {17, 37, 164, 174, 203, 220, 231, 246, 273, 290, 330, 344, 351, 383, 390, 402, 421, 554, 724, 729, 794, 843, 851, 865, 911, 915, 919, 922, 937, 972, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(71, 806), fp: EncodedCountingMonoid(9, SumMonoid(3471)) }], item_sets: [ItemSet { range: Range(806, 71), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(71, 351), fp: EncodedCountingMonoid(10, SumMonoid(2475)) }, Fingerprint { range: Range(351, 806), fp: EncodedCountingMonoid(9, SumMonoid(4748)) }], item_sets: [ItemSet { range: Range(806, 71), items: [843, 851, 865, 911, 915, 919, 922, 937, 972, 996, 17, 37], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(351, 566), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }], item_sets: [ItemSet { range: Range(71, 203), items: [71, 109], want_response: true }, ItemSet { range: Range(203, 351), items: [203, 258], want_response: true }, ItemSet { range: Range(566, 806), items: [566, 805], want_response: true }], wants: [843, 851, 865, 911, 915, 919, 922, 937, 972, 996, 17, 37], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(351, 402), fp: EncodedCountingMonoid(3, SumMonoid(1124)) }, Fingerprint { range: Range(402, 566), fp: EncodedCountingMonoid(3, SumMonoid(1377)) }], item_sets: [ItemSet { range: Range(71, 203), items: [164, 174], want_response: false }, ItemSet { range: Range(203, 351), items: [203, 220, 231, 246, 273, 290, 330, 344], want_response: false }, ItemSet { range: Range(566, 806), items: [724, 729, 794], want_response: false }], wants: [71, 109, 258, 566, 805], provide: [(843, true), (851, true), (865, true), (911, true), (915, true), (919, true), (922, true), (937, true), (972, true), (996, true), (17, true), (37, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(351, 402), items: [398], want_response: true }, ItemSet { range: Range(402, 566), items: [526, 535], want_response: true }], wants: [164, 174, 220, 231, 246, 273, 290, 330, 344, 724, 729, 794], provide: [(71, true), (109, true), (258, true), (566, true), (805, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(351, 402), items: [351, 383, 390], want_response: false }, ItemSet { range: Range(402, 566), items: [402, 421, 554], want_response: false }], wants: [398, 526, 535], provide: [(164, true), (174, true), (220, true), (231, true), (246, true), (273, true), (290, true), (330, true), (344, true), (724, true), (729, true), (794, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [351, 383, 390, 402, 421, 554], provide: [(398, true), (526, true), (535, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(351, true), (383, true), (390, true), (402, true), (421, true), (554, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {71, 109, 203, 258, 398, 526, 535, 566, 805} + [843, 851, 865, 911, 915, 919, 922, 937, 972, 996, 17, 37, 164, 174, 220, 231, 246, 273, 290, 330, 344, 724, 729, 794, 351, 383, 390, 402, 421, 554]
[INFO] [stdout] b all: {17, 37, 164, 174, 203, 220, 231, 246, 273, 290, 330, 344, 351, 383, 390, 402, 421, 554, 724, 729, 794, 843, 851, 865, 911, 915, 919, 922, 937, 972, 996} + [71, 109, 258, 566, 805, 398, 526, 535]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [17, 37, 71, 109, 164, 174, 203, 220, 231, 246, 258, 273, 290, 330, 344, 351, 383, 390, 398, 402, 421, 526, 535, 554, 566, 724, 729, 794, 805, 843, 851, 865, 911, 915, 919, 922, 937, 972, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [17, 37, 71, 109, 164, 174, 203, 220, 231, 246, 258, 273, 290, 330, 344, 351, 383, 390, 398, 402, 421, 526, 535, 554, 566, 724, 729, 794, 805, 843, 851, 865, 911, 915, 919, 922, 937, 972, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [17, 37, 71, 109, 164, 174, 203, 220, 231, 246, 258, 273, 290, 330, 344, 351, 383, 390, 398, 402, 421, 526, 535, 554, 566, 724, 729, 794, 805, 843, 851, 865, 911, 915, 919, 922, 937, 972, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {122, 142, 220, 226, 283, 322, 564, 620, 658, 706, 716, 734, 789, 884, 908, 936, 941}
[INFO] [stdout] b items: {13, 47, 125, 200, 269, 389, 396, 463, 522, 588, 607, 717, 830, 933, 947, 974}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(122, 942), fp: EncodedCountingMonoid(17, SumMonoid(9771)) }], item_sets: [ItemSet { range: Range(942, 122), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(122, 522), fp: EncodedCountingMonoid(6, SumMonoid(1842)) }, Fingerprint { range: Range(522, 942), fp: EncodedCountingMonoid(6, SumMonoid(4197)) }], item_sets: [ItemSet { range: Range(942, 122), items: [947, 974, 13, 47], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(122, 226), fp: EncodedCountingMonoid(3, SumMonoid(484)) }, Fingerprint { range: Range(226, 522), fp: EncodedCountingMonoid(3, SumMonoid(831)) }, Fingerprint { range: Range(522, 789), fp: EncodedCountingMonoid(6, SumMonoid(3998)) }, Fingerprint { range: Range(789, 942), fp: EncodedCountingMonoid(5, SumMonoid(4458)) }], item_sets: [], wants: [947, 974, 13, 47], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(122, 226), items: [125, 200], want_response: true }, ItemSet { range: Range(226, 396), items: [269, 389], want_response: true }, ItemSet { range: Range(396, 522), items: [396, 463], want_response: true }, ItemSet { range: Range(522, 607), items: [522, 588], want_response: true }, ItemSet { range: Range(607, 789), items: [607, 717], want_response: true }, ItemSet { range: Range(789, 942), items: [830, 933], want_response: true }], wants: [], provide: [(947, true), (974, true), (13, true), (47, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(122, 226), items: [122, 142, 220], want_response: false }, ItemSet { range: Range(226, 396), items: [226, 283, 322], want_response: false }, ItemSet { range: Range(396, 522), items: [], want_response: false }, ItemSet { range: Range(522, 607), items: [564], want_response: false }, ItemSet { range: Range(607, 789), items: [620, 658, 706, 716, 734], want_response: false }, ItemSet { range: Range(789, 942), items: [789, 884, 908, 936, 941], want_response: false }], wants: [125, 200, 269, 389, 396, 463, 522, 588, 607, 717, 830, 933], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [122, 142, 220, 226, 283, 322, 564, 620, 658, 706, 716, 734, 789, 884, 908, 936, 941], provide: [(125, true), (200, true), (269, true), (389, true), (396, true), (463, true), (522, true), (588, true), (607, true), (717, true), (830, true), (933, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(122, true), (142, true), (220, true), (226, true), (283, true), (322, true), (564, true), (620, true), (658, true), (706, true), (716, true), (734, true), (789, true), (884, true), (908, true), (936, true), (941, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {122, 142, 220, 226, 283, 322, 564, 620, 658, 706, 716, 734, 789, 884, 908, 936, 941} + [947, 974, 13, 47, 125, 200, 269, 389, 396, 463, 522, 588, 607, 717, 830, 933]
[INFO] [stdout] b all: {13, 47, 125, 200, 269, 389, 396, 463, 522, 588, 607, 717, 830, 933, 947, 974} + [122, 142, 220, 226, 283, 322, 564, 620, 658, 706, 716, 734, 789, 884, 908, 936, 941]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 47, 122, 125, 142, 200, 220, 226, 269, 283, 322, 389, 396, 463, 522, 564, 588, 607, 620, 658, 706, 716, 717, 734, 789, 830, 884, 908, 933, 936, 941, 947, 974]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 47, 122, 125, 142, 200, 220, 226, 269, 283, 322, 389, 396, 463, 522, 564, 588, 607, 620, 658, 706, 716, 717, 734, 789, 830, 884, 908, 933, 936, 941, 947, 974], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 47, 122, 125, 142, 200, 220, 226, 269, 283, 322, 389, 396, 463, 522, 564, 588, 607, 620, 658, 706, 716, 717, 734, 789, 830, 884, 908, 933, 936, 941, 947, 974], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 240, 250, 256, 266, 273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 510, 522, 527, 534, 548, 549, 554, 563, 595, 598, 625, 629, 633, 649, 665, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806, 808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 977, 985, 998}
[INFO] [stdout] b items: {236, 498, 540, 557, 674, 973}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 999), fp: EncodedCountingMonoid(87, SumMonoid(43572)) }], item_sets: [ItemSet { range: Range(999, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 557), fp: EncodedCountingMonoid(3, SumMonoid(1274)) }, Fingerprint { range: Range(557, 999), fp: EncodedCountingMonoid(3, SumMonoid(2204)) }], item_sets: [ItemSet { range: Range(999, 12), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 273), fp: EncodedCountingMonoid(25, SumMonoid(3801)) }, Fingerprint { range: Range(273, 557), fp: EncodedCountingMonoid(24, SumMonoid(9755)) }, Fingerprint { range: Range(557, 808), fp: EncodedCountingMonoid(19, SumMonoid(12950)) }, Fingerprint { range: Range(808, 999), fp: EncodedCountingMonoid(19, SumMonoid(17066)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 273), items: [236], want_response: true }, ItemSet { range: Range(273, 557), items: [498, 540], want_response: true }, ItemSet { range: Range(557, 808), items: [557, 674], want_response: true }, ItemSet { range: Range(808, 999), items: [973], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 273), items: [12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 240, 250, 256, 266], want_response: false }, ItemSet { range: Range(273, 557), items: [273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 510, 522, 527, 534, 548, 549, 554], want_response: false }, ItemSet { range: Range(557, 808), items: [563, 595, 598, 625, 629, 633, 649, 665, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806], want_response: false }, ItemSet { range: Range(808, 999), items: [808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 977, 985, 998], want_response: false }], wants: [236, 498, 540, 557, 674, 973], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 240, 250, 256, 266, 273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 510, 522, 527, 534, 548, 549, 554, 563, 595, 598, 625, 629, 633, 649, 665, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806, 808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 977, 985, 998], provide: [(236, true), (498, true), (540, true), (557, true), (674, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(12, true), (38, true), (53, true), (60, true), (70, true), (73, true), (75, true), (85, true), (114, true), (122, true), (133, true), (150, true), (171, true), (173, true), (190, true), (192, true), (201, true), (208, true), (217, true), (220, true), (232, true), (240, true), (250, true), (256, true), (266, true), (273, true), (276, true), (285, true), (300, true), (304, true), (309, true), (320, true), (338, true), (353, true), (371, true), (377, true), (387, true), (401, true), (408, true), (424, true), (439, true), (446, true), (510, true), (522, true), (527, true), (534, true), (548, true), (549, true), (554, true), (563, true), (595, true), (598, true), (625, true), (629, true), (633, true), (649, true), (665, true), (677, true), (684, true), (690, true), (692, true), (702, true), (719, true), (723, true), (747, true), (770, true), (783, true), (806, true), (808, true), (813, true), (815, true), (822, true), (832, true), (881, true), (884, true), (890, true), (894, true), (896, true), (906, true), (909, true), (919, true), (923, true), (945, true), (969, true), (977, true), (985, true), (998, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 240, 250, 256, 266, 273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 510, 522, 527, 534, 548, 549, 554, 563, 595, 598, 625, 629, 633, 649, 665, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806, 808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 977, 985, 998} + [236, 498, 540, 557, 674, 973]
[INFO] [stdout] b all: {236, 498, 540, 557, 674, 973} + [12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 240, 250, 256, 266, 273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 510, 522, 527, 534, 548, 549, 554, 563, 595, 598, 625, 629, 633, 649, 665, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806, 808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 977, 985, 998]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 236, 240, 250, 256, 266, 273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 498, 510, 522, 527, 534, 540, 548, 549, 554, 557, 563, 595, 598, 625, 629, 633, 649, 665, 674, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806, 808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 973, 977, 985, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 236, 240, 250, 256, 266, 273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 498, 510, 522, 527, 534, 540, 548, 549, 554, 557, 563, 595, 598, 625, 629, 633, 649, 665, 674, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806, 808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 973, 977, 985, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [12, 38, 53, 60, 70, 73, 75, 85, 114, 122, 133, 150, 171, 173, 190, 192, 201, 208, 217, 220, 232, 236, 240, 250, 256, 266, 273, 276, 285, 300, 304, 309, 320, 338, 353, 371, 377, 387, 401, 408, 424, 439, 446, 498, 510, 522, 527, 534, 540, 548, 549, 554, 557, 563, 595, 598, 625, 629, 633, 649, 665, 674, 677, 684, 690, 692, 702, 719, 723, 747, 770, 783, 806, 808, 813, 815, 822, 832, 881, 884, 890, 894, 896, 906, 909, 919, 923, 945, 969, 973, 977, 985, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {18, 19, 20, 39, 47, 60, 68, 115, 133, 136, 145, 237, 249, 260, 265, 286, 380, 395, 404, 621, 657, 676, 739, 852, 999}
[INFO] [stdout] b items: {13, 19, 24, 67, 126, 142, 154, 208, 231, 243, 270, 272, 287, 288, 292, 364, 396, 443, 449, 476, 482, 504, 515, 543, 556, 560, 564, 607, 612, 628, 660, 735, 747, 756, 836, 875, 876, 895, 931}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 1000), fp: EncodedCountingMonoid(25, SumMonoid(7820)) }], item_sets: [ItemSet { range: Range(1000, 18), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(18, 482), fp: EncodedCountingMonoid(19, SumMonoid(4751)) }, Fingerprint { range: Range(482, 1000), fp: EncodedCountingMonoid(19, SumMonoid(12882)) }], item_sets: [ItemSet { range: Range(1000, 18), items: [13], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 145), fp: EncodedCountingMonoid(10, SumMonoid(655)) }, Fingerprint { range: Range(145, 482), fp: EncodedCountingMonoid(9, SumMonoid(2621)) }, Fingerprint { range: Range(482, 739), fp: EncodedCountingMonoid(3, SumMonoid(1954)) }, Fingerprint { range: Range(739, 1000), fp: EncodedCountingMonoid(3, SumMonoid(2590)) }], item_sets: [], wants: [13], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(18, 126), fp: EncodedCountingMonoid(3, SumMonoid(110)) }, Fingerprint { range: Range(145, 288), fp: EncodedCountingMonoid(7, SumMonoid(1665)) }, Fingerprint { range: Range(288, 482), fp: EncodedCountingMonoid(7, SumMonoid(2708)) }, Fingerprint { range: Range(482, 564), fp: EncodedCountingMonoid(6, SumMonoid(3160)) }, Fingerprint { range: Range(564, 739), fp: EncodedCountingMonoid(6, SumMonoid(3806)) }, Fingerprint { range: Range(739, 876), fp: EncodedCountingMonoid(4, SumMonoid(3214)) }, Fingerprint { range: Range(876, 1000), fp: EncodedCountingMonoid(3, SumMonoid(2702)) }], item_sets: [ItemSet { range: Range(126, 145), items: [126, 142], want_response: true }], wants: [], provide: [(13, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 47), fp: EncodedCountingMonoid(4, SumMonoid(96)) }, Fingerprint { range: Range(47, 126), fp: EncodedCountingMonoid(4, SumMonoid(290)) }, Fingerprint { range: Range(145, 260), fp: EncodedCountingMonoid(3, SumMonoid(631)) }, Fingerprint { range: Range(260, 288), fp: EncodedCountingMonoid(3, SumMonoid(811)) }], item_sets: [ItemSet { range: Range(126, 145), items: [133, 136], want_response: false }, ItemSet { range: Range(288, 404), items: [380, 395], want_response: true }, ItemSet { range: Range(404, 482), items: [404], want_response: true }, ItemSet { range: Range(482, 564), items: [], want_response: true }, ItemSet { range: Range(564, 676), items: [621, 657], want_response: true }, ItemSet { range: Range(676, 739), items: [676], want_response: true }, ItemSet { range: Range(739, 876), items: [739, 852], want_response: true }, ItemSet { range: Range(876, 1000), items: [999], want_response: true }], wants: [126, 142], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(288, 404), items: [288, 292, 364, 396], want_response: false }, ItemSet { range: Range(404, 482), items: [443, 449, 476], want_response: false }, ItemSet { range: Range(482, 564), items: [482, 504, 515, 543, 556, 560], want_response: false }, ItemSet { range: Range(564, 676), items: [564, 607, 612, 628, 660], want_response: false }, ItemSet { range: Range(676, 739), items: [735], want_response: false }, ItemSet { range: Range(739, 876), items: [747, 756, 836, 875], want_response: false }, ItemSet { range: Range(876, 1000), items: [876, 895, 931], want_response: false }, ItemSet { range: Range(18, 47), items: [19, 24], want_response: true }, ItemSet { range: Range(47, 126), items: [67], want_response: true }, ItemSet { range: Range(145, 231), items: [154, 208], want_response: true }, ItemSet { range: Range(231, 260), items: [231, 243], want_response: true }, ItemSet { range: Range(260, 287), items: [270, 272], want_response: true }, ItemSet { range: Range(287, 288), items: [287], want_response: true }], wants: [133, 136, 380, 395, 404, 621, 657, 676, 739, 852, 999], provide: [(126, true), (142, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(18, 47), items: [18, 19, 20, 39], want_response: false }, ItemSet { range: Range(47, 126), items: [47, 60, 68, 115], want_response: false }, ItemSet { range: Range(145, 231), items: [145], want_response: false }, ItemSet { range: Range(231, 260), items: [237, 249], want_response: false }, ItemSet { range: Range(260, 287), items: [260, 265, 286], want_response: false }, ItemSet { range: Range(287, 288), items: [], want_response: false }], wants: [288, 292, 364, 396, 443, 449, 476, 482, 504, 515, 543, 556, 560, 564, 607, 612, 628, 660, 735, 747, 756, 836, 875, 876, 895, 931, 24, 67, 154, 208, 231, 243, 270, 272, 287], provide: [(133, true), (136, true), (380, true), (395, true), (404, true), (621, true), (657, true), (676, true), (739, true), (852, true), (999, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [18, 20, 39, 47, 60, 68, 115, 145, 237, 249, 260, 265, 286], provide: [(288, true), (292, true), (364, true), (396, true), (443, true), (449, true), (476, true), (482, true), (504, true), (515, true), (543, true), (556, true), (560, true), (564, true), (607, true), (612, true), (628, true), (660, true), (735, true), (747, true), (756, true), (836, true), (875, true), (876, true), (895, true), (931, true), (24, true), (67, true), (154, true), (208, true), (231, true), (243, true), (270, true), (272, true), (287, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (20, true), (39, true), (47, true), (60, true), (68, true), (115, true), (145, true), (237, true), (249, true), (260, true), (265, true), (286, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {18, 19, 20, 39, 47, 60, 68, 115, 133, 136, 145, 237, 249, 260, 265, 286, 380, 395, 404, 621, 657, 676, 739, 852, 999} + [13, 126, 142, 288, 292, 364, 396, 443, 449, 476, 482, 504, 515, 543, 556, 560, 564, 607, 612, 628, 660, 735, 747, 756, 836, 875, 876, 895, 931, 24, 67, 154, 208, 231, 243, 270, 272, 287]
[INFO] [stdout] b all: {13, 19, 24, 67, 126, 142, 154, 208, 231, 243, 270, 272, 287, 288, 292, 364, 396, 443, 449, 476, 482, 504, 515, 543, 556, 560, 564, 607, 612, 628, 660, 735, 747, 756, 836, 875, 876, 895, 931} + [133, 136, 380, 395, 404, 621, 657, 676, 739, 852, 999, 18, 20, 39, 47, 60, 68, 115, 145, 237, 249, 260, 265, 286]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 18, 19, 20, 24, 39, 47, 60, 67, 68, 115, 126, 133, 136, 142, 145, 154, 208, 231, 237, 243, 249, 260, 265, 270, 272, 286, 287, 288, 292, 364, 380, 395, 396, 404, 443, 449, 476, 482, 504, 515, 543, 556, 560, 564, 607, 612, 621, 628, 657, 660, 676, 735, 739, 747, 756, 836, 852, 875, 876, 895, 931, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 18, 19, 20, 24, 39, 47, 60, 67, 68, 115, 126, 133, 136, 142, 145, 154, 208, 231, 237, 243, 249, 260, 265, 270, 272, 286, 287, 288, 292, 364, 380, 395, 396, 404, 443, 449, 476, 482, 504, 515, 543, 556, 560, 564, 607, 612, 621, 628, 657, 660, 676, 735, 739, 747, 756, 836, 852, 875, 876, 895, 931, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 18, 19, 20, 24, 39, 47, 60, 67, 68, 115, 126, 133, 136, 142, 145, 154, 208, 231, 237, 243, 249, 260, 265, 270, 272, 286, 287, 288, 292, 364, 380, 395, 396, 404, 443, 449, 476, 482, 504, 515, 543, 556, 560, 564, 607, 612, 621, 628, 657, 660, 676, 735, 739, 747, 756, 836, 852, 875, 876, 895, 931, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {15, 29, 62, 66, 68, 79, 110, 125, 155, 176, 181, 197, 198, 216, 227, 245, 257, 260, 269, 277, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535, 553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789, 794, 813, 833, 838, 849, 852, 859, 876, 968, 972, 981, 983}
[INFO] [stdout] b items: {69, 105, 211, 279, 550, 927, 980}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 984), fp: EncodedCountingMonoid(56, SumMonoid(26746)) }], item_sets: [ItemSet { range: Range(984, 15), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 550), fp: EncodedCountingMonoid(4, SumMonoid(664)) }, Fingerprint { range: Range(550, 984), fp: EncodedCountingMonoid(3, SumMonoid(2457)) }], item_sets: [ItemSet { range: Range(984, 15), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 257), fp: EncodedCountingMonoid(16, SumMonoid(2149)) }, Fingerprint { range: Range(257, 550), fp: EncodedCountingMonoid(15, SumMonoid(5338)) }, Fingerprint { range: Range(550, 794), fp: EncodedCountingMonoid(13, SumMonoid(8641)) }, Fingerprint { range: Range(794, 984), fp: EncodedCountingMonoid(12, SumMonoid(10618)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(15, 211), items: [69, 105], want_response: true }, ItemSet { range: Range(211, 257), items: [211], want_response: true }, ItemSet { range: Range(257, 550), items: [279], want_response: true }, ItemSet { range: Range(550, 794), items: [550], want_response: true }, ItemSet { range: Range(794, 984), items: [927, 980], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(15, 211), items: [15, 29, 62, 66, 68, 79, 110, 125, 155, 176, 181, 197, 198], want_response: false }, ItemSet { range: Range(211, 257), items: [216, 227, 245], want_response: false }, ItemSet { range: Range(257, 550), items: [257, 260, 269, 277, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535], want_response: false }, ItemSet { range: Range(550, 794), items: [553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789], want_response: false }, ItemSet { range: Range(794, 984), items: [794, 813, 833, 838, 849, 852, 859, 876, 968, 972, 981, 983], want_response: false }], wants: [69, 105, 211, 279, 550, 927, 980], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [15, 29, 62, 66, 68, 79, 110, 125, 155, 176, 181, 197, 198, 216, 227, 245, 257, 260, 269, 277, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535, 553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789, 794, 813, 833, 838, 849, 852, 859, 876, 968, 972, 981, 983], provide: [(69, true), (105, true), (211, true), (279, true), (550, true), (927, true), (980, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(15, true), (29, true), (62, true), (66, true), (68, true), (79, true), (110, true), (125, true), (155, true), (176, true), (181, true), (197, true), (198, true), (216, true), (227, true), (245, true), (257, true), (260, true), (269, true), (277, true), (285, true), (287, true), (302, true), (316, true), (320, true), (357, true), (398, true), (478, true), (487, true), (510, true), (535, true), (553, true), (609, true), (612, true), (619, true), (622, true), (630, true), (643, true), (649, true), (686, true), (729, true), (739, true), (761, true), (789, true), (794, true), (813, true), (833, true), (838, true), (849, true), (852, true), (859, true), (876, true), (968, true), (972, true), (981, true), (983, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {15, 29, 62, 66, 68, 79, 110, 125, 155, 176, 181, 197, 198, 216, 227, 245, 257, 260, 269, 277, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535, 553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789, 794, 813, 833, 838, 849, 852, 859, 876, 968, 972, 981, 983} + [69, 105, 211, 279, 550, 927, 980]
[INFO] [stdout] b all: {69, 105, 211, 279, 550, 927, 980} + [15, 29, 62, 66, 68, 79, 110, 125, 155, 176, 181, 197, 198, 216, 227, 245, 257, 260, 269, 277, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535, 553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789, 794, 813, 833, 838, 849, 852, 859, 876, 968, 972, 981, 983]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [15, 29, 62, 66, 68, 69, 79, 105, 110, 125, 155, 176, 181, 197, 198, 211, 216, 227, 245, 257, 260, 269, 277, 279, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535, 550, 553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789, 794, 813, 833, 838, 849, 852, 859, 876, 927, 968, 972, 980, 981, 983]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [15, 29, 62, 66, 68, 69, 79, 105, 110, 125, 155, 176, 181, 197, 198, 211, 216, 227, 245, 257, 260, 269, 277, 279, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535, 550, 553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789, 794, 813, 833, 838, 849, 852, 859, 876, 927, 968, 972, 980, 981, 983], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [15, 29, 62, 66, 68, 69, 79, 105, 110, 125, 155, 176, 181, 197, 198, 211, 216, 227, 245, 257, 260, 269, 277, 279, 285, 287, 302, 316, 320, 357, 398, 478, 487, 510, 535, 550, 553, 609, 612, 619, 622, 630, 643, 649, 686, 729, 739, 761, 789, 794, 813, 833, 838, 849, 852, 859, 876, 927, 968, 972, 980, 981, 983], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {37, 40, 55, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999}
[INFO] [stdout] b items: {57, 449}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(37, 1000), fp: EncodedCountingMonoid(64, SumMonoid(33513)) }], item_sets: [ItemSet { range: Range(1000, 37), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(1000, 37), items: [], want_response: false }, ItemSet { range: Range(37, 1000), items: [57, 449], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(37, 1000), items: [37, 40, 55, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999], want_response: false }], wants: [57, 449], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [37, 40, 55, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999], provide: [(57, true), (449, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(37, true), (40, true), (55, true), (66, true), (77, true), (112, true), (152, true), (157, true), (163, true), (173, true), (185, true), (191, true), (203, true), (208, true), (213, true), (225, true), (237, true), (279, true), (345, true), (351, true), (353, true), (354, true), (375, true), (387, true), (435, true), (486, true), (489, true), (493, true), (498, true), (502, true), (518, true), (590, true), (591, true), (594, true), (596, true), (600, true), (629, true), (641, true), (642, true), (654, true), (665, true), (668, true), (670, true), (696, true), (697, true), (702, true), (724, true), (729, true), (741, true), (744, true), (768, true), (775, true), (825, true), (861, true), (865, true), (888, true), (909, true), (920, true), (938, true), (943, true), (948, true), (970, true), (972, true), (999, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {37, 40, 55, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999} + [57, 449]
[INFO] [stdout] b all: {57, 449} + [37, 40, 55, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [37, 40, 55, 57, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 449, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [37, 40, 55, 57, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 449, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [37, 40, 55, 57, 66, 77, 112, 152, 157, 163, 173, 185, 191, 203, 208, 213, 225, 237, 279, 345, 351, 353, 354, 375, 387, 435, 449, 486, 489, 493, 498, 502, 518, 590, 591, 594, 596, 600, 629, 641, 642, 654, 665, 668, 670, 696, 697, 702, 724, 729, 741, 744, 768, 775, 825, 861, 865, 888, 909, 920, 938, 943, 948, 970, 972, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {23, 38, 40, 44, 70, 78, 102, 104, 135, 139, 141, 205, 219, 277, 292, 301, 305, 323, 352, 354, 391, 399, 403, 415, 457, 458, 478, 479, 493, 517, 525, 529, 539, 556, 562, 572, 594, 604, 654, 661, 710, 734, 735, 752, 759, 769, 778, 783, 786, 799, 823, 875, 877, 886, 923, 931, 960, 961, 972}
[INFO] [stdout] b items: {14, 54, 55, 72, 77, 78, 93, 101, 115, 140, 150, 154, 159, 166, 199, 209, 212, 272, 310, 365, 368, 410, 437, 451, 456, 489, 525, 547, 556, 563, 565, 607, 632, 653, 669, 675, 686, 690, 762, 782, 788, 811, 814, 816, 826, 829, 869, 883, 884, 889, 895, 901, 936, 940, 942, 981, 994}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 973), fp: EncodedCountingMonoid(59, SumMonoid(29641)) }], item_sets: [ItemSet { range: Range(973, 23), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 556), fp: EncodedCountingMonoid(27, SumMonoid(6664)) }, Fingerprint { range: Range(556, 973), fp: EncodedCountingMonoid(27, SumMonoid(20863)) }], item_sets: [ItemSet { range: Range(973, 23), items: [981, 994, 14], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 323), fp: EncodedCountingMonoid(17, SumMonoid(2513)) }, Fingerprint { range: Range(323, 556), fp: EncodedCountingMonoid(16, SumMonoid(7112)) }, Fingerprint { range: Range(556, 778), fp: EncodedCountingMonoid(13, SumMonoid(8662)) }, Fingerprint { range: Range(778, 973), fp: EncodedCountingMonoid(13, SumMonoid(11354)) }], item_sets: [], wants: [981, 994, 14], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 150), fp: EncodedCountingMonoid(9, SumMonoid(785)) }, Fingerprint { range: Range(150, 323), fp: EncodedCountingMonoid(9, SumMonoid(1831)) }, Fingerprint { range: Range(323, 456), fp: EncodedCountingMonoid(5, SumMonoid(2031)) }, Fingerprint { range: Range(456, 556), fp: EncodedCountingMonoid(4, SumMonoid(2017)) }, Fingerprint { range: Range(556, 669), fp: EncodedCountingMonoid(6, SumMonoid(3576)) }, Fingerprint { range: Range(669, 778), fp: EncodedCountingMonoid(5, SumMonoid(3482)) }, Fingerprint { range: Range(778, 883), fp: EncodedCountingMonoid(8, SumMonoid(6535)) }, Fingerprint { range: Range(883, 973), fp: EncodedCountingMonoid(8, SumMonoid(7270)) }], item_sets: [], wants: [], provide: [(981, true), (994, true), (14, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 102), fp: EncodedCountingMonoid(6, SumMonoid(293)) }, Fingerprint { range: Range(102, 150), fp: EncodedCountingMonoid(5, SumMonoid(621)) }, Fingerprint { range: Range(150, 292), fp: EncodedCountingMonoid(3, SumMonoid(701)) }, Fingerprint { range: Range(292, 323), fp: EncodedCountingMonoid(3, SumMonoid(898)) }, Fingerprint { range: Range(323, 399), fp: EncodedCountingMonoid(4, SumMonoid(1420)) }, Fingerprint { range: Range(399, 456), fp: EncodedCountingMonoid(3, SumMonoid(1217)) }, Fingerprint { range: Range(456, 517), fp: EncodedCountingMonoid(5, SumMonoid(2365)) }, Fingerprint { range: Range(517, 556), fp: EncodedCountingMonoid(4, SumMonoid(2110)) }, Fingerprint { range: Range(556, 604), fp: EncodedCountingMonoid(4, SumMonoid(2284)) }, Fingerprint { range: Range(604, 669), fp: EncodedCountingMonoid(3, SumMonoid(1919)) }, Fingerprint { range: Range(669, 752), fp: EncodedCountingMonoid(3, SumMonoid(2179)) }, Fingerprint { range: Range(752, 778), fp: EncodedCountingMonoid(3, SumMonoid(2280)) }, Fingerprint { range: Range(778, 823), fp: EncodedCountingMonoid(4, SumMonoid(3146)) }, Fingerprint { range: Range(823, 883), fp: EncodedCountingMonoid(3, SumMonoid(2575)) }, Fingerprint { range: Range(883, 960), fp: EncodedCountingMonoid(3, SumMonoid(2740)) }, Fingerprint { range: Range(960, 973), fp: EncodedCountingMonoid(3, SumMonoid(2893)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 78), fp: EncodedCountingMonoid(4, SumMonoid(258)) }, Fingerprint { range: Range(78, 102), fp: EncodedCountingMonoid(3, SumMonoid(272)) }, Fingerprint { range: Range(150, 199), fp: EncodedCountingMonoid(4, SumMonoid(629)) }, Fingerprint { range: Range(199, 292), fp: EncodedCountingMonoid(4, SumMonoid(892)) }, Fingerprint { range: Range(778, 814), fp: EncodedCountingMonoid(3, SumMonoid(2381)) }, Fingerprint { range: Range(883, 901), fp: EncodedCountingMonoid(4, SumMonoid(3551)) }, Fingerprint { range: Range(901, 960), fp: EncodedCountingMonoid(4, SumMonoid(3719)) }], item_sets: [ItemSet { range: Range(102, 150), items: [115, 140], want_response: true }, ItemSet { range: Range(292, 323), items: [310], want_response: true }, ItemSet { range: Range(323, 399), items: [365, 368], want_response: true }, ItemSet { range: Range(399, 451), items: [410, 437], want_response: true }, ItemSet { range: Range(451, 456), items: [451], want_response: true }, ItemSet { range: Range(456, 517), items: [456, 489], want_response: true }, ItemSet { range: Range(517, 556), items: [525, 547], want_response: true }, ItemSet { range: Range(556, 565), items: [556, 563], want_response: true }, ItemSet { range: Range(565, 604), items: [565], want_response: true }, ItemSet { range: Range(604, 653), items: [607, 632], want_response: true }, ItemSet { range: Range(653, 669), items: [653], want_response: true }, ItemSet { range: Range(669, 686), items: [669, 675], want_response: true }, ItemSet { range: Range(686, 752), items: [686, 690], want_response: true }, ItemSet { range: Range(752, 778), items: [762], want_response: true }, ItemSet { range: Range(814, 823), items: [814, 816], want_response: true }, ItemSet { range: Range(823, 869), items: [826, 829], want_response: true }, ItemSet { range: Range(869, 883), items: [869], want_response: true }, ItemSet { range: Range(960, 973), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 44), fp: EncodedCountingMonoid(3, SumMonoid(101)) }], item_sets: [ItemSet { range: Range(102, 150), items: [102, 104, 135, 139, 141], want_response: false }, ItemSet { range: Range(292, 323), items: [292, 301, 305], want_response: false }, ItemSet { range: Range(323, 399), items: [323, 352, 354, 391], want_response: false }, ItemSet { range: Range(399, 451), items: [399, 403, 415], want_response: false }, ItemSet { range: Range(451, 456), items: [], want_response: false }, ItemSet { range: Range(456, 517), items: [457, 458, 478, 479, 493], want_response: false }, ItemSet { range: Range(517, 556), items: [517, 525, 529, 539], want_response: false }, ItemSet { range: Range(556, 565), items: [556, 562], want_response: false }, ItemSet { range: Range(565, 604), items: [572, 594], want_response: false }, ItemSet { range: Range(604, 653), items: [604], want_response: false }, ItemSet { range: Range(653, 669), items: [654, 661], want_response: false }, ItemSet { range: Range(669, 686), items: [], want_response: false }, ItemSet { range: Range(686, 752), items: [710, 734, 735], want_response: false }, ItemSet { range: Range(752, 778), items: [752, 759, 769], want_response: false }, ItemSet { range: Range(814, 823), items: [], want_response: false }, ItemSet { range: Range(823, 869), items: [823], want_response: false }, ItemSet { range: Range(869, 883), items: [875, 877], want_response: false }, ItemSet { range: Range(960, 973), items: [960, 961, 972], want_response: false }, ItemSet { range: Range(44, 78), items: [44, 70], want_response: true }, ItemSet { range: Range(78, 102), items: [78], want_response: true }, ItemSet { range: Range(150, 199), items: [], want_response: true }, ItemSet { range: Range(199, 277), items: [205, 219], want_response: true }, ItemSet { range: Range(277, 292), items: [277], want_response: true }, ItemSet { range: Range(778, 786), items: [778, 783], want_response: true }, ItemSet { range: Range(786, 814), items: [786, 799], want_response: true }, ItemSet { range: Range(883, 901), items: [886], want_response: true }, ItemSet { range: Range(901, 960), items: [923, 931], want_response: true }], wants: [115, 140, 310, 365, 368, 410, 437, 451, 456, 489, 547, 563, 565, 607, 632, 653, 669, 675, 686, 690, 762, 814, 816, 826, 829, 869], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(44, 78), items: [54, 55, 72, 77], want_response: false }, ItemSet { range: Range(78, 102), items: [78, 93, 101], want_response: false }, ItemSet { range: Range(150, 199), items: [150, 154, 159, 166], want_response: false }, ItemSet { range: Range(199, 277), items: [199, 209, 212, 272], want_response: false }, ItemSet { range: Range(277, 292), items: [], want_response: false }, ItemSet { range: Range(778, 786), items: [782], want_response: false }, ItemSet { range: Range(786, 814), items: [788, 811], want_response: false }, ItemSet { range: Range(883, 901), items: [883, 884, 889, 895], want_response: false }, ItemSet { range: Range(901, 960), items: [901, 936, 940, 942], want_response: false }, ItemSet { range: Range(23, 44), items: [], want_response: true }], wants: [102, 104, 135, 139, 141, 292, 301, 305, 323, 352, 354, 391, 399, 403, 415, 457, 458, 478, 479, 493, 517, 529, 539, 562, 572, 594, 604, 654, 661, 710, 734, 735, 752, 759, 769, 823, 875, 877, 960, 961, 972, 44, 70, 205, 219, 277, 778, 783, 786, 799, 886, 923, 931], provide: [(115, true), (140, true), (310, true), (365, true), (368, true), (410, true), (437, true), (451, true), (456, true), (489, true), (547, true), (563, true), (565, true), (607, true), (632, true), (653, true), (669, true), (675, true), (686, true), (690, true), (762, true), (814, true), (816, true), (826, true), (829, true), (869, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 44), items: [23, 38, 40], want_response: false }], wants: [54, 55, 72, 77, 93, 101, 150, 154, 159, 166, 199, 209, 212, 272, 782, 788, 811, 883, 884, 889, 895, 901, 936, 940, 942], provide: [(102, true), (104, true), (135, true), (139, true), (141, true), (292, true), (301, true), (305, true), (323, true), (352, true), (354, true), (391, true), (399, true), (403, true), (415, true), (457, true), (458, true), (478, true), (479, true), (493, true), (517, true), (529, true), (539, true), (562, true), (572, true), (594, true), (604, true), (654, true), (661, true), (710, true), (734, true), (735, true), (752, true), (759, true), (769, true), (823, true), (875, true), (877, true), (960, true), (961, true), (972, true), (44, true), (70, true), (205, true), (219, true), (277, true), (778, true), (783, true), (786, true), (799, true), (886, true), (923, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [23, 38, 40], provide: [(54, true), (55, true), (72, true), (77, true), (93, true), (101, true), (150, true), (154, true), (159, true), (166, true), (199, true), (209, true), (212, true), (272, true), (782, true), (788, true), (811, true), (883, true), (884, true), (889, true), (895, true), (901, true), (936, true), (940, true), (942, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(23, true), (38, true), (40, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {23, 38, 40, 44, 70, 78, 102, 104, 135, 139, 141, 205, 219, 277, 292, 301, 305, 323, 352, 354, 391, 399, 403, 415, 457, 458, 478, 479, 493, 517, 525, 529, 539, 556, 562, 572, 594, 604, 654, 661, 710, 734, 735, 752, 759, 769, 778, 783, 786, 799, 823, 875, 877, 886, 923, 931, 960, 961, 972} + [981, 994, 14, 115, 140, 310, 365, 368, 410, 437, 451, 456, 489, 547, 563, 565, 607, 632, 653, 669, 675, 686, 690, 762, 814, 816, 826, 829, 869, 54, 55, 72, 77, 93, 101, 150, 154, 159, 166, 199, 209, 212, 272, 782, 788, 811, 883, 884, 889, 895, 901, 936, 940, 942]
[INFO] [stdout] b all: {14, 54, 55, 72, 77, 78, 93, 101, 115, 140, 150, 154, 159, 166, 199, 209, 212, 272, 310, 365, 368, 410, 437, 451, 456, 489, 525, 547, 556, 563, 565, 607, 632, 653, 669, 675, 686, 690, 762, 782, 788, 811, 814, 816, 826, 829, 869, 883, 884, 889, 895, 901, 936, 940, 942, 981, 994} + [102, 104, 135, 139, 141, 292, 301, 305, 323, 352, 354, 391, 399, 403, 415, 457, 458, 478, 479, 493, 517, 529, 539, 562, 572, 594, 604, 654, 661, 710, 734, 735, 752, 759, 769, 823, 875, 877, 960, 961, 972, 44, 70, 205, 219, 277, 778, 783, 786, 799, 886, 923, 931, 23, 38, 40]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [14, 23, 38, 40, 44, 54, 55, 70, 72, 77, 78, 93, 101, 102, 104, 115, 135, 139, 140, 141, 150, 154, 159, 166, 199, 205, 209, 212, 219, 272, 277, 292, 301, 305, 310, 323, 352, 354, 365, 368, 391, 399, 403, 410, 415, 437, 451, 456, 457, 458, 478, 479, 489, 493, 517, 525, 529, 539, 547, 556, 562, 563, 565, 572, 594, 604, 607, 632, 653, 654, 661, 669, 675, 686, 690, 710, 734, 735, 752, 759, 762, 769, 778, 782, 783, 786, 788, 799, 811, 814, 816, 823, 826, 829, 869, 875, 877, 883, 884, 886, 889, 895, 901, 923, 931, 936, 940, 942, 960, 961, 972, 981, 994]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [14, 23, 38, 40, 44, 54, 55, 70, 72, 77, 78, 93, 101, 102, 104, 115, 135, 139, 140, 141, 150, 154, 159, 166, 199, 205, 209, 212, 219, 272, 277, 292, 301, 305, 310, 323, 352, 354, 365, 368, 391, 399, 403, 410, 415, 437, 451, 456, 457, 458, 478, 479, 489, 493, 517, 525, 529, 539, 547, 556, 562, 563, 565, 572, 594, 604, 607, 632, 653, 654, 661, 669, 675, 686, 690, 710, 734, 735, 752, 759, 762, 769, 778, 782, 783, 786, 788, 799, 811, 814, 816, 823, 826, 829, 869, 875, 877, 883, 884, 886, 889, 895, 901, 923, 931, 936, 940, 942, 960, 961, 972, 981, 994], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [14, 23, 38, 40, 44, 54, 55, 70, 72, 77, 78, 93, 101, 102, 104, 115, 135, 139, 140, 141, 150, 154, 159, 166, 199, 205, 209, 212, 219, 272, 277, 292, 301, 305, 310, 323, 352, 354, 365, 368, 391, 399, 403, 410, 415, 437, 451, 456, 457, 458, 478, 479, 489, 493, 517, 525, 529, 539, 547, 556, 562, 563, 565, 572, 594, 604, 607, 632, 653, 654, 661, 669, 675, 686, 690, 710, 734, 735, 752, 759, 762, 769, 778, 782, 783, 786, 788, 799, 811, 814, 816, 823, 826, 829, 869, 875, 877, 883, 884, 886, 889, 895, 901, 923, 931, 936, 940, 942, 960, 961, 972, 981, 994], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {16, 18, 32, 37, 43, 52, 69, 75, 105, 106, 134, 150, 162, 184, 211, 214, 215, 239, 276, 282, 297, 300, 305, 318, 385, 427, 460, 482, 484, 489, 509, 517, 529, 545, 575, 587, 590, 596, 621, 632, 642, 647, 657, 658, 676, 708, 734, 749, 751, 752, 754, 770, 810, 815, 823, 834, 835, 839, 842, 883, 893, 895, 922, 945, 974, 983, 995}
[INFO] [stdout] b items: {23, 45, 50, 64, 68, 72, 77, 115, 117, 128, 129, 151, 185, 187, 193, 203, 213, 246, 265, 269, 292, 314, 330, 346, 356, 357, 365, 379, 384, 426, 458, 502, 511, 512, 570, 611, 627, 656, 671, 688, 731, 760, 764, 815, 817, 836, 876, 881, 912, 977, 992}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 996), fp: EncodedCountingMonoid(67, SumMonoid(34054)) }], item_sets: [ItemSet { range: Range(996, 16), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(16, 365), fp: EncodedCountingMonoid(26, SumMonoid(4795)) }, Fingerprint { range: Range(365, 996), fp: EncodedCountingMonoid(25, SumMonoid(16721)) }], item_sets: [ItemSet { range: Range(996, 16), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 162), fp: EncodedCountingMonoid(12, SumMonoid(837)) }, Fingerprint { range: Range(162, 365), fp: EncodedCountingMonoid(12, SumMonoid(3003)) }, Fingerprint { range: Range(365, 734), fp: EncodedCountingMonoid(22, SumMonoid(12416)) }, Fingerprint { range: Range(734, 996), fp: EncodedCountingMonoid(21, SumMonoid(17798)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(16, 77), fp: EncodedCountingMonoid(6, SumMonoid(322)) }, Fingerprint { range: Range(77, 162), fp: EncodedCountingMonoid(6, SumMonoid(717)) }, Fingerprint { range: Range(162, 269), fp: EncodedCountingMonoid(7, SumMonoid(1492)) }, Fingerprint { range: Range(269, 365), fp: EncodedCountingMonoid(7, SumMonoid(2264)) }, Fingerprint { range: Range(365, 570), fp: EncodedCountingMonoid(8, SumMonoid(3537)) }, Fingerprint { range: Range(570, 734), fp: EncodedCountingMonoid(7, SumMonoid(4554)) }, Fingerprint { range: Range(734, 876), fp: EncodedCountingMonoid(5, SumMonoid(3992)) }, Fingerprint { range: Range(876, 996), fp: EncodedCountingMonoid(5, SumMonoid(4638)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 43), fp: EncodedCountingMonoid(4, SumMonoid(103)) }, Fingerprint { range: Range(43, 77), fp: EncodedCountingMonoid(4, SumMonoid(239)) }, Fingerprint { range: Range(162, 214), fp: EncodedCountingMonoid(3, SumMonoid(557)) }, Fingerprint { range: Range(214, 269), fp: EncodedCountingMonoid(3, SumMonoid(668)) }, Fingerprint { range: Range(269, 300), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(300, 365), fp: EncodedCountingMonoid(3, SumMonoid(923)) }, Fingerprint { range: Range(365, 489), fp: EncodedCountingMonoid(5, SumMonoid(2238)) }, Fingerprint { range: Range(489, 570), fp: EncodedCountingMonoid(5, SumMonoid(2589)) }, Fingerprint { range: Range(570, 642), fp: EncodedCountingMonoid(6, SumMonoid(3601)) }, Fingerprint { range: Range(642, 734), fp: EncodedCountingMonoid(6, SumMonoid(3988)) }, Fingerprint { range: Range(734, 815), fp: EncodedCountingMonoid(7, SumMonoid(5320)) }, Fingerprint { range: Range(815, 876), fp: EncodedCountingMonoid(6, SumMonoid(4988)) }, Fingerprint { range: Range(876, 945), fp: EncodedCountingMonoid(4, SumMonoid(3593)) }, Fingerprint { range: Range(945, 996), fp: EncodedCountingMonoid(4, SumMonoid(3897)) }], item_sets: [ItemSet { range: Range(77, 134), items: [105, 106], want_response: true }, ItemSet { range: Range(134, 162), items: [134, 150], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(43, 68), fp: EncodedCountingMonoid(3, SumMonoid(159)) }, Fingerprint { range: Range(162, 203), fp: EncodedCountingMonoid(3, SumMonoid(565)) }, Fingerprint { range: Range(300, 356), fp: EncodedCountingMonoid(3, SumMonoid(990)) }, Fingerprint { range: Range(365, 426), fp: EncodedCountingMonoid(3, SumMonoid(1128)) }], item_sets: [ItemSet { range: Range(77, 134), items: [77, 115, 117, 128, 129], want_response: false }, ItemSet { range: Range(134, 162), items: [151], want_response: false }, ItemSet { range: Range(16, 43), items: [23], want_response: true }, ItemSet { range: Range(68, 77), items: [68, 72], want_response: true }, ItemSet { range: Range(203, 214), items: [203, 213], want_response: true }, ItemSet { range: Range(214, 269), items: [246, 265], want_response: true }, ItemSet { range: Range(269, 300), items: [269, 292], want_response: true }, ItemSet { range: Range(356, 365), items: [356, 357], want_response: true }, ItemSet { range: Range(426, 489), items: [426, 458], want_response: true }, ItemSet { range: Range(489, 512), items: [502, 511], want_response: true }, ItemSet { range: Range(512, 570), items: [512], want_response: true }, ItemSet { range: Range(570, 627), items: [570, 611], want_response: true }, ItemSet { range: Range(627, 642), items: [627], want_response: true }, ItemSet { range: Range(642, 688), items: [656, 671], want_response: true }, ItemSet { range: Range(688, 734), items: [688, 731], want_response: true }, ItemSet { range: Range(734, 815), items: [760, 764], want_response: true }, ItemSet { range: Range(815, 836), items: [815, 817], want_response: true }, ItemSet { range: Range(836, 876), items: [836], want_response: true }, ItemSet { range: Range(876, 912), items: [876, 881], want_response: true }, ItemSet { range: Range(912, 945), items: [912], want_response: true }, ItemSet { range: Range(945, 996), items: [977, 992], want_response: true }], wants: [105, 106, 134, 150], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(16, 43), items: [16, 18, 32, 37], want_response: false }, ItemSet { range: Range(68, 77), items: [69, 75], want_response: false }, ItemSet { range: Range(203, 214), items: [211], want_response: false }, ItemSet { range: Range(214, 269), items: [214, 215, 239], want_response: false }, ItemSet { range: Range(269, 300), items: [276, 282, 297], want_response: false }, ItemSet { range: Range(356, 365), items: [], want_response: false }, ItemSet { range: Range(426, 489), items: [427, 460, 482, 484], want_response: false }, ItemSet { range: Range(489, 512), items: [489, 509], want_response: false }, ItemSet { range: Range(512, 570), items: [517, 529, 545], want_response: false }, ItemSet { range: Range(570, 627), items: [575, 587, 590, 596, 621], want_response: false }, ItemSet { range: Range(627, 642), items: [632], want_response: false }, ItemSet { range: Range(642, 688), items: [642, 647, 657, 658, 676], want_response: false }, ItemSet { range: Range(688, 734), items: [708], want_response: false }, ItemSet { range: Range(734, 815), items: [734, 749, 751, 752, 754, 770, 810], want_response: false }, ItemSet { range: Range(815, 836), items: [815, 823, 834, 835], want_response: false }, ItemSet { range: Range(836, 876), items: [839, 842], want_response: false }, ItemSet { range: Range(876, 912), items: [883, 893, 895], want_response: false }, ItemSet { range: Range(912, 945), items: [922], want_response: false }, ItemSet { range: Range(945, 996), items: [945, 974, 983, 995], want_response: false }, ItemSet { range: Range(43, 68), items: [43, 52], want_response: true }, ItemSet { range: Range(162, 203), items: [162, 184], want_response: true }, ItemSet { range: Range(300, 318), items: [300, 305], want_response: true }, ItemSet { range: Range(318, 356), items: [318], want_response: true }, ItemSet { range: Range(365, 426), items: [385], want_response: true }], wants: [77, 115, 117, 128, 129, 151, 23, 68, 72, 203, 213, 246, 265, 269, 292, 356, 357, 426, 458, 502, 511, 512, 570, 611, 627, 656, 671, 688, 731, 760, 764, 817, 836, 876, 881, 912, 977, 992], provide: [(105, true), (106, true), (134, true), (150, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(43, 68), items: [45, 50, 64], want_response: false }, ItemSet { range: Range(162, 203), items: [185, 187, 193], want_response: false }, ItemSet { range: Range(300, 318), items: [314], want_response: false }, ItemSet { range: Range(318, 356), items: [330, 346], want_response: false }, ItemSet { range: Range(365, 426), items: [365, 379, 384], want_response: false }], wants: [16, 18, 32, 37, 69, 75, 211, 214, 215, 239, 276, 282, 297, 427, 460, 482, 484, 489, 509, 517, 529, 545, 575, 587, 590, 596, 621, 632, 642, 647, 657, 658, 676, 708, 734, 749, 751, 752, 754, 770, 810, 823, 834, 835, 839, 842, 883, 893, 895, 922, 945, 974, 983, 995, 43, 52, 162, 184, 300, 305, 318, 385], provide: [(77, true), (115, true), (117, true), (128, true), (129, true), (151, true), (23, true), (68, true), (72, true), (203, true), (213, true), (246, true), (265, true), (269, true), (292, true), (356, true), (357, true), (426, true), (458, true), (502, true), (511, true), (512, true), (570, true), (611, true), (627, true), (656, true), (671, true), (688, true), (731, true), (760, true), (764, true), (817, true), (836, true), (876, true), (881, true), (912, true), (977, true), (992, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 50, 64, 185, 187, 193, 314, 330, 346, 365, 379, 384], provide: [(16, true), (18, true), (32, true), (37, true), (69, true), (75, true), (211, true), (214, true), (215, true), (239, true), (276, true), (282, true), (297, true), (427, true), (460, true), (482, true), (484, true), (489, true), (509, true), (517, true), (529, true), (545, true), (575, true), (587, true), (590, true), (596, true), (621, true), (632, true), (642, true), (647, true), (657, true), (658, true), (676, true), (708, true), (734, true), (749, true), (751, true), (752, true), (754, true), (770, true), (810, true), (823, true), (834, true), (835, true), (839, true), (842, true), (883, true), (893, true), (895, true), (922, true), (945, true), (974, true), (983, true), (995, true), (43, true), (52, true), (162, true), (184, true), (300, true), (305, true), (318, true), (385, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (50, true), (64, true), (185, true), (187, true), (193, true), (314, true), (330, true), (346, true), (365, true), (379, true), (384, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {16, 18, 32, 37, 43, 52, 69, 75, 105, 106, 134, 150, 162, 184, 211, 214, 215, 239, 276, 282, 297, 300, 305, 318, 385, 427, 460, 482, 484, 489, 509, 517, 529, 545, 575, 587, 590, 596, 621, 632, 642, 647, 657, 658, 676, 708, 734, 749, 751, 752, 754, 770, 810, 815, 823, 834, 835, 839, 842, 883, 893, 895, 922, 945, 974, 983, 995} + [77, 115, 117, 128, 129, 151, 23, 68, 72, 203, 213, 246, 265, 269, 292, 356, 357, 426, 458, 502, 511, 512, 570, 611, 627, 656, 671, 688, 731, 760, 764, 817, 836, 876, 881, 912, 977, 992, 45, 50, 64, 185, 187, 193, 314, 330, 346, 365, 379, 384]
[INFO] [stdout] b all: {23, 45, 50, 64, 68, 72, 77, 115, 117, 128, 129, 151, 185, 187, 193, 203, 213, 246, 265, 269, 292, 314, 330, 346, 356, 357, 365, 379, 384, 426, 458, 502, 511, 512, 570, 611, 627, 656, 671, 688, 731, 760, 764, 815, 817, 836, 876, 881, 912, 977, 992} + [105, 106, 134, 150, 16, 18, 32, 37, 69, 75, 211, 214, 215, 239, 276, 282, 297, 427, 460, 482, 484, 489, 509, 517, 529, 545, 575, 587, 590, 596, 621, 632, 642, 647, 657, 658, 676, 708, 734, 749, 751, 752, 754, 770, 810, 823, 834, 835, 839, 842, 883, 893, 895, 922, 945, 974, 983, 995, 43, 52, 162, 184, 300, 305, 318, 385]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [16, 18, 23, 32, 37, 43, 45, 50, 52, 64, 68, 69, 72, 75, 77, 105, 106, 115, 117, 128, 129, 134, 150, 151, 162, 184, 185, 187, 193, 203, 211, 213, 214, 215, 239, 246, 265, 269, 276, 282, 292, 297, 300, 305, 314, 318, 330, 346, 356, 357, 365, 379, 384, 385, 426, 427, 458, 460, 482, 484, 489, 502, 509, 511, 512, 517, 529, 545, 570, 575, 587, 590, 596, 611, 621, 627, 632, 642, 647, 656, 657, 658, 671, 676, 688, 708, 731, 734, 749, 751, 752, 754, 760, 764, 770, 810, 815, 817, 823, 834, 835, 836, 839, 842, 876, 881, 883, 893, 895, 912, 922, 945, 974, 977, 983, 992, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [16, 18, 23, 32, 37, 43, 45, 50, 52, 64, 68, 69, 72, 75, 77, 105, 106, 115, 117, 128, 129, 134, 150, 151, 162, 184, 185, 187, 193, 203, 211, 213, 214, 215, 239, 246, 265, 269, 276, 282, 292, 297, 300, 305, 314, 318, 330, 346, 356, 357, 365, 379, 384, 385, 426, 427, 458, 460, 482, 484, 489, 502, 509, 511, 512, 517, 529, 545, 570, 575, 587, 590, 596, 611, 621, 627, 632, 642, 647, 656, 657, 658, 671, 676, 688, 708, 731, 734, 749, 751, 752, 754, 760, 764, 770, 810, 815, 817, 823, 834, 835, 836, 839, 842, 876, 881, 883, 893, 895, 912, 922, 945, 974, 977, 983, 992, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [16, 18, 23, 32, 37, 43, 45, 50, 52, 64, 68, 69, 72, 75, 77, 105, 106, 115, 117, 128, 129, 134, 150, 151, 162, 184, 185, 187, 193, 203, 211, 213, 214, 215, 239, 246, 265, 269, 276, 282, 292, 297, 300, 305, 314, 318, 330, 346, 356, 357, 365, 379, 384, 385, 426, 427, 458, 460, 482, 484, 489, 502, 509, 511, 512, 517, 529, 545, 570, 575, 587, 590, 596, 611, 621, 627, 632, 642, 647, 656, 657, 658, 671, 676, 688, 708, 731, 734, 749, 751, 752, 754, 760, 764, 770, 810, 815, 817, 823, 834, 835, 836, 839, 842, 876, 881, 883, 893, 895, 912, 922, 945, 974, 977, 983, 992, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 843, 898, 942, 985, 995}
[INFO] [stdout] b items: {841}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 996), fp: EncodedCountingMonoid(51, SumMonoid(25822)) }], item_sets: [ItemSet { range: Range(996, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(996, 1), items: [], want_response: false }, ItemSet { range: Range(1, 996), items: [841], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 996), items: [1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 843, 898, 942, 985, 995], want_response: false }], wants: [841], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 843, 898, 942, 985, 995], provide: [(841, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(1, true), (9, true), (16, true), (80, true), (82, true), (94, true), (176, true), (187, true), (194, true), (206, true), (217, true), (245, true), (280, true), (286, true), (294, true), (306, true), (308, true), (374, true), (430, true), (455, true), (457, true), (478, true), (484, true), (503, true), (504, true), (517, true), (520, true), (558, true), (564, true), (576, true), (579, true), (603, true), (639, true), (656, true), (662, true), (694, true), (731, true), (752, true), (753, true), (761, true), (790, true), (812, true), (824, true), (832, true), (833, true), (837, true), (843, true), (898, true), (942, true), (985, true), (995, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 843, 898, 942, 985, 995} + [841]
[INFO] [stdout] b all: {841} + [1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 843, 898, 942, 985, 995]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 841, 843, 898, 942, 985, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 841, 843, 898, 942, 985, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 9, 16, 80, 82, 94, 176, 187, 194, 206, 217, 245, 280, 286, 294, 306, 308, 374, 430, 455, 457, 478, 484, 503, 504, 517, 520, 558, 564, 576, 579, 603, 639, 656, 662, 694, 731, 752, 753, 761, 790, 812, 824, 832, 833, 837, 841, 843, 898, 942, 985, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 5, 22, 25, 40, 44, 47, 49, 52, 61, 76, 77, 78, 86, 90, 94, 129, 150, 167, 189, 208, 217, 220, 230, 238, 242, 252, 258, 275, 292, 295, 299, 307, 323, 329, 334, 335, 368, 375, 413, 415, 425, 432, 452, 464, 493, 497, 510, 528, 550, 559, 563, 565, 569, 580, 598, 604, 627, 648, 652, 672, 676, 709, 711, 718, 719, 737, 745, 753, 756, 761, 762, 768, 786, 794, 813, 818, 824, 831, 846, 865, 894, 927, 937, 948, 975, 983, 984, 992}
[INFO] [stdout] b items: {6, 22, 37, 52, 59, 69, 89, 92, 101, 123, 136, 159, 167, 171, 180, 183, 207, 212, 218, 227, 235, 237, 250, 284, 301, 309, 340, 360, 374, 394, 402, 406, 407, 423, 445, 456, 472, 475, 477, 478, 496, 523, 524, 526, 542, 545, 585, 598, 601, 635, 652, 662, 686, 735, 755, 758, 760, 770, 785, 828, 864, 867, 892, 898, 908, 917, 923, 961, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 993), fp: EncodedCountingMonoid(89, SumMonoid(41728)) }], item_sets: [ItemSet { range: Range(993, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 456), fp: EncodedCountingMonoid(35, SumMonoid(7677)) }, Fingerprint { range: Range(456, 993), fp: EncodedCountingMonoid(34, SumMonoid(23544)) }], item_sets: [ItemSet { range: Range(993, 2), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 220), fp: EncodedCountingMonoid(22, SumMonoid(1908)) }, Fingerprint { range: Range(220, 456), fp: EncodedCountingMonoid(22, SumMonoid(7109)) }, Fingerprint { range: Range(456, 745), fp: EncodedCountingMonoid(23, SumMonoid(13949)) }, Fingerprint { range: Range(745, 993), fp: EncodedCountingMonoid(22, SumMonoid(18762)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 136), fp: EncodedCountingMonoid(10, SumMonoid(650)) }, Fingerprint { range: Range(136, 220), fp: EncodedCountingMonoid(9, SumMonoid(1633)) }, Fingerprint { range: Range(220, 360), fp: EncodedCountingMonoid(8, SumMonoid(2183)) }, Fingerprint { range: Range(360, 456), fp: EncodedCountingMonoid(8, SumMonoid(3211)) }, Fingerprint { range: Range(456, 545), fp: EncodedCountingMonoid(10, SumMonoid(4969)) }, Fingerprint { range: Range(545, 745), fp: EncodedCountingMonoid(9, SumMonoid(5699)) }, Fingerprint { range: Range(745, 892), fp: EncodedCountingMonoid(8, SumMonoid(6387)) }, Fingerprint { range: Range(892, 993), fp: EncodedCountingMonoid(7, SumMonoid(6489)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 61), fp: EncodedCountingMonoid(9, SumMonoid(286)) }, Fingerprint { range: Range(61, 136), fp: EncodedCountingMonoid(8, SumMonoid(691)) }, Fingerprint { range: Range(136, 208), fp: EncodedCountingMonoid(3, SumMonoid(506)) }, Fingerprint { range: Range(220, 295), fp: EncodedCountingMonoid(8, SumMonoid(2007)) }, Fingerprint { range: Range(295, 360), fp: EncodedCountingMonoid(7, SumMonoid(2222)) }, Fingerprint { range: Range(360, 425), fp: EncodedCountingMonoid(4, SumMonoid(1571)) }, Fingerprint { range: Range(425, 456), fp: EncodedCountingMonoid(3, SumMonoid(1309)) }, Fingerprint { range: Range(456, 510), fp: EncodedCountingMonoid(3, SumMonoid(1454)) }, Fingerprint { range: Range(545, 648), fp: EncodedCountingMonoid(9, SumMonoid(5215)) }, Fingerprint { range: Range(648, 745), fp: EncodedCountingMonoid(9, SumMonoid(6242)) }, Fingerprint { range: Range(745, 794), fp: EncodedCountingMonoid(7, SumMonoid(5331)) }, Fingerprint { range: Range(794, 892), fp: EncodedCountingMonoid(7, SumMonoid(5791)) }, Fingerprint { range: Range(892, 975), fp: EncodedCountingMonoid(4, SumMonoid(3706)) }, Fingerprint { range: Range(975, 993), fp: EncodedCountingMonoid(4, SumMonoid(3934)) }], item_sets: [ItemSet { range: Range(208, 220), items: [208, 217], want_response: true }, ItemSet { range: Range(510, 545), items: [510, 528], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 52), fp: EncodedCountingMonoid(3, SumMonoid(65)) }, Fingerprint { range: Range(61, 101), fp: EncodedCountingMonoid(3, SumMonoid(250)) }, Fingerprint { range: Range(136, 180), fp: EncodedCountingMonoid(4, SumMonoid(633)) }, Fingerprint { range: Range(180, 208), fp: EncodedCountingMonoid(3, SumMonoid(570)) }, Fingerprint { range: Range(220, 250), fp: EncodedCountingMonoid(3, SumMonoid(699)) }, Fingerprint { range: Range(360, 406), fp: EncodedCountingMonoid(4, SumMonoid(1530)) }, Fingerprint { range: Range(406, 425), fp: EncodedCountingMonoid(3, SumMonoid(1236)) }, Fingerprint { range: Range(456, 477), fp: EncodedCountingMonoid(3, SumMonoid(1403)) }, Fingerprint { range: Range(477, 510), fp: EncodedCountingMonoid(3, SumMonoid(1451)) }, Fingerprint { range: Range(545, 601), fp: EncodedCountingMonoid(3, SumMonoid(1728)) }, Fingerprint { range: Range(745, 770), fp: EncodedCountingMonoid(3, SumMonoid(2273)) }, Fingerprint { range: Range(892, 917), fp: EncodedCountingMonoid(3, SumMonoid(2698)) }, Fingerprint { range: Range(917, 975), fp: EncodedCountingMonoid(3, SumMonoid(2801)) }], item_sets: [ItemSet { range: Range(208, 220), items: [212, 218], want_response: false }, ItemSet { range: Range(510, 545), items: [523, 524, 526, 542], want_response: false }, ItemSet { range: Range(52, 61), items: [52, 59], want_response: true }, ItemSet { range: Range(101, 136), items: [101, 123], want_response: true }, ItemSet { range: Range(250, 295), items: [250, 284], want_response: true }, ItemSet { range: Range(295, 340), items: [301, 309], want_response: true }, ItemSet { range: Range(340, 360), items: [340], want_response: true }, ItemSet { range: Range(425, 456), items: [445], want_response: true }, ItemSet { range: Range(601, 648), items: [601, 635], want_response: true }, ItemSet { range: Range(648, 686), items: [652, 662], want_response: true }, ItemSet { range: Range(686, 745), items: [686, 735], want_response: true }, ItemSet { range: Range(770, 794), items: [770, 785], want_response: true }, ItemSet { range: Range(794, 867), items: [828, 864], want_response: true }, ItemSet { range: Range(867, 892), items: [867], want_response: true }, ItemSet { range: Range(975, 993), items: [990], want_response: true }], wants: [208, 217, 510, 528], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 40), fp: EncodedCountingMonoid(4, SumMonoid(54)) }, Fingerprint { range: Range(40, 52), fp: EncodedCountingMonoid(4, SumMonoid(180)) }, Fingerprint { range: Range(61, 86), fp: EncodedCountingMonoid(4, SumMonoid(292)) }, Fingerprint { range: Range(86, 101), fp: EncodedCountingMonoid(3, SumMonoid(270)) }, Fingerprint { range: Range(545, 569), fp: EncodedCountingMonoid(4, SumMonoid(2237)) }, Fingerprint { range: Range(569, 601), fp: EncodedCountingMonoid(3, SumMonoid(1747)) }, Fingerprint { range: Range(745, 761), fp: EncodedCountingMonoid(3, SumMonoid(2254)) }, Fingerprint { range: Range(761, 770), fp: EncodedCountingMonoid(3, SumMonoid(2291)) }], item_sets: [ItemSet { range: Range(52, 61), items: [52], want_response: false }, ItemSet { range: Range(101, 136), items: [129], want_response: false }, ItemSet { range: Range(250, 295), items: [252, 258, 275, 292], want_response: false }, ItemSet { range: Range(295, 340), items: [295, 299, 307, 323, 329, 334, 335], want_response: false }, ItemSet { range: Range(340, 360), items: [], want_response: false }, ItemSet { range: Range(425, 456), items: [425, 432, 452], want_response: false }, ItemSet { range: Range(601, 648), items: [604, 627], want_response: false }, ItemSet { range: Range(648, 686), items: [648, 652, 672, 676], want_response: false }, ItemSet { range: Range(686, 745), items: [709, 711, 718, 719, 737], want_response: false }, ItemSet { range: Range(770, 794), items: [786], want_response: false }, ItemSet { range: Range(794, 867), items: [794, 813, 818, 824, 831, 846, 865], want_response: false }, ItemSet { range: Range(867, 892), items: [], want_response: false }, ItemSet { range: Range(975, 993), items: [975, 983, 984, 992], want_response: false }, ItemSet { range: Range(136, 180), items: [150, 167], want_response: true }, ItemSet { range: Range(180, 208), items: [189], want_response: true }, ItemSet { range: Range(220, 238), items: [220, 230], want_response: true }, ItemSet { range: Range(238, 250), items: [238, 242], want_response: true }, ItemSet { range: Range(360, 406), items: [368, 375], want_response: true }, ItemSet { range: Range(406, 425), items: [413, 415], want_response: true }, ItemSet { range: Range(456, 477), items: [464], want_response: true }, ItemSet { range: Range(477, 510), items: [493, 497], want_response: true }, ItemSet { range: Range(892, 917), items: [894], want_response: true }, ItemSet { range: Range(917, 948), items: [927, 937], want_response: true }, ItemSet { range: Range(948, 975), items: [948], want_response: true }], wants: [212, 218, 523, 524, 526, 542, 59, 101, 123, 250, 284, 301, 309, 340, 445, 601, 635, 662, 686, 735, 770, 785, 828, 864, 867, 990], provide: [(208, true), (217, true), (510, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 180), items: [136, 159, 167, 171], want_response: false }, ItemSet { range: Range(180, 208), items: [180, 183, 207], want_response: false }, ItemSet { range: Range(220, 238), items: [227, 235, 237], want_response: false }, ItemSet { range: Range(238, 250), items: [], want_response: false }, ItemSet { range: Range(360, 406), items: [360, 374, 394, 402], want_response: false }, ItemSet { range: Range(406, 425), items: [406, 407, 423], want_response: false }, ItemSet { range: Range(456, 477), items: [456, 472, 475], want_response: false }, ItemSet { range: Range(477, 510), items: [477, 478, 496], want_response: false }, ItemSet { range: Range(892, 917), items: [892, 898, 908], want_response: false }, ItemSet { range: Range(917, 948), items: [917, 923], want_response: false }, ItemSet { range: Range(948, 975), items: [961], want_response: false }, ItemSet { range: Range(2, 37), items: [6, 22], want_response: true }, ItemSet { range: Range(37, 40), items: [37], want_response: true }, ItemSet { range: Range(40, 52), items: [], want_response: true }, ItemSet { range: Range(61, 86), items: [69], want_response: true }, ItemSet { range: Range(86, 101), items: [89, 92], want_response: true }, ItemSet { range: Range(545, 569), items: [545], want_response: true }, ItemSet { range: Range(569, 601), items: [585, 598], want_response: true }, ItemSet { range: Range(745, 760), items: [755, 758], want_response: true }, ItemSet { range: Range(760, 761), items: [760], want_response: true }, ItemSet { range: Range(761, 770), items: [], want_response: true }], wants: [129, 252, 258, 275, 292, 295, 299, 307, 323, 329, 334, 335, 425, 432, 452, 604, 627, 648, 672, 676, 709, 711, 718, 719, 737, 786, 794, 813, 818, 824, 831, 846, 865, 975, 983, 984, 992, 150, 189, 220, 230, 238, 242, 368, 375, 413, 415, 464, 493, 497, 894, 927, 937, 948], provide: [(212, true), (218, true), (523, true), (524, true), (526, true), (542, true), (59, true), (101, true), (123, true), (250, true), (284, true), (301, true), (309, true), (340, true), (445, true), (601, true), (635, true), (662, true), (686, true), (735, true), (770, true), (785, true), (828, true), (864, true), (867, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(2, 37), items: [2, 5, 22, 25], want_response: false }, ItemSet { range: Range(37, 40), items: [], want_response: false }, ItemSet { range: Range(40, 52), items: [40, 44, 47, 49], want_response: false }, ItemSet { range: Range(61, 86), items: [61, 76, 77, 78], want_response: false }, ItemSet { range: Range(86, 101), items: [86, 90, 94], want_response: false }, ItemSet { range: Range(545, 569), items: [550, 559, 563, 565], want_response: false }, ItemSet { range: Range(569, 601), items: [569, 580, 598], want_response: false }, ItemSet { range: Range(745, 760), items: [745, 753, 756], want_response: false }, ItemSet { range: Range(760, 761), items: [], want_response: false }, ItemSet { range: Range(761, 770), items: [761, 762, 768], want_response: false }], wants: [136, 159, 171, 180, 183, 207, 227, 235, 237, 360, 374, 394, 402, 406, 407, 423, 456, 472, 475, 477, 478, 496, 892, 898, 908, 917, 923, 961, 6, 37, 69, 89, 92, 545, 585, 755, 758, 760], provide: [(129, true), (252, true), (258, true), (275, true), (292, true), (295, true), (299, true), (307, true), (323, true), (329, true), (334, true), (335, true), (425, true), (432, true), (452, true), (604, true), (627, true), (648, true), (672, true), (676, true), (709, true), (711, true), (718, true), (719, true), (737, true), (786, true), (794, true), (813, true), (818, true), (824, true), (831, true), (846, true), (865, true), (975, true), (983, true), (984, true), (992, true), (150, true), (189, true), (220, true), (230, true), (238, true), (242, true), (368, true), (375, true), (413, true), (415, true), (464, true), (493, true), (497, true), (894, true), (927, true), (937, true), (948, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [2, 5, 25, 40, 44, 47, 49, 61, 76, 77, 78, 86, 90, 94, 550, 559, 563, 565, 569, 580, 745, 753, 756, 761, 762, 768], provide: [(136, true), (159, true), (171, true), (180, true), (183, true), (207, true), (227, true), (235, true), (237, true), (360, true), (374, true), (394, true), (402, true), (406, true), (407, true), (423, true), (456, true), (472, true), (475, true), (477, true), (478, true), (496, true), (892, true), (898, true), (908, true), (917, true), (923, true), (961, true), (6, true), (37, true), (69, true), (89, true), (92, true), (545, true), (585, true), (755, true), (758, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(2, true), (5, true), (25, true), (40, true), (44, true), (47, true), (49, true), (61, true), (76, true), (77, true), (78, true), (86, true), (90, true), (94, true), (550, true), (559, true), (563, true), (565, true), (569, true), (580, true), (745, true), (753, true), (756, true), (761, true), (762, true), (768, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 5, 22, 25, 40, 44, 47, 49, 52, 61, 76, 77, 78, 86, 90, 94, 129, 150, 167, 189, 208, 217, 220, 230, 238, 242, 252, 258, 275, 292, 295, 299, 307, 323, 329, 334, 335, 368, 375, 413, 415, 425, 432, 452, 464, 493, 497, 510, 528, 550, 559, 563, 565, 569, 580, 598, 604, 627, 648, 652, 672, 676, 709, 711, 718, 719, 737, 745, 753, 756, 761, 762, 768, 786, 794, 813, 818, 824, 831, 846, 865, 894, 927, 937, 948, 975, 983, 984, 992} + [212, 218, 523, 524, 526, 542, 59, 101, 123, 250, 284, 301, 309, 340, 445, 601, 635, 662, 686, 735, 770, 785, 828, 864, 867, 990, 136, 159, 171, 180, 183, 207, 227, 235, 237, 360, 374, 394, 402, 406, 407, 423, 456, 472, 475, 477, 478, 496, 892, 898, 908, 917, 923, 961, 6, 37, 69, 89, 92, 545, 585, 755, 758, 760]
[INFO] [stdout] b all: {6, 22, 37, 52, 59, 69, 89, 92, 101, 123, 136, 159, 167, 171, 180, 183, 207, 212, 218, 227, 235, 237, 250, 284, 301, 309, 340, 360, 374, 394, 402, 406, 407, 423, 445, 456, 472, 475, 477, 478, 496, 523, 524, 526, 542, 545, 585, 598, 601, 635, 652, 662, 686, 735, 755, 758, 760, 770, 785, 828, 864, 867, 892, 898, 908, 917, 923, 961, 990} + [208, 217, 510, 528, 129, 252, 258, 275, 292, 295, 299, 307, 323, 329, 334, 335, 425, 432, 452, 604, 627, 648, 672, 676, 709, 711, 718, 719, 737, 786, 794, 813, 818, 824, 831, 846, 865, 975, 983, 984, 992, 150, 189, 220, 230, 238, 242, 368, 375, 413, 415, 464, 493, 497, 894, 927, 937, 948, 2, 5, 25, 40, 44, 47, 49, 61, 76, 77, 78, 86, 90, 94, 550, 559, 563, 565, 569, 580, 745, 753, 756, 761, 762, 768]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 5, 6, 22, 25, 37, 40, 44, 47, 49, 52, 59, 61, 69, 76, 77, 78, 86, 89, 90, 92, 94, 101, 123, 129, 136, 150, 159, 167, 171, 180, 183, 189, 207, 208, 212, 217, 218, 220, 227, 230, 235, 237, 238, 242, 250, 252, 258, 275, 284, 292, 295, 299, 301, 307, 309, 323, 329, 334, 335, 340, 360, 368, 374, 375, 394, 402, 406, 407, 413, 415, 423, 425, 432, 445, 452, 456, 464, 472, 475, 477, 478, 493, 496, 497, 510, 523, 524, 526, 528, 542, 545, 550, 559, 563, 565, 569, 580, 585, 598, 601, 604, 627, 635, 648, 652, 662, 672, 676, 686, 709, 711, 718, 719, 735, 737, 745, 753, 755, 756, 758, 760, 761, 762, 768, 770, 785, 786, 794, 813, 818, 824, 828, 831, 846, 864, 865, 867, 892, 894, 898, 908, 917, 923, 927, 937, 948, 961, 975, 983, 984, 990, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 5, 6, 22, 25, 37, 40, 44, 47, 49, 52, 59, 61, 69, 76, 77, 78, 86, 89, 90, 92, 94, 101, 123, 129, 136, 150, 159, 167, 171, 180, 183, 189, 207, 208, 212, 217, 218, 220, 227, 230, 235, 237, 238, 242, 250, 252, 258, 275, 284, 292, 295, 299, 301, 307, 309, 323, 329, 334, 335, 340, 360, 368, 374, 375, 394, 402, 406, 407, 413, 415, 423, 425, 432, 445, 452, 456, 464, 472, 475, 477, 478, 493, 496, 497, 510, 523, 524, 526, 528, 542, 545, 550, 559, 563, 565, 569, 580, 585, 598, 601, 604, 627, 635, 648, 652, 662, 672, 676, 686, 709, 711, 718, 719, 735, 737, 745, 753, 755, 756, 758, 760, 761, 762, 768, 770, 785, 786, 794, 813, 818, 824, 828, 831, 846, 864, 865, 867, 892, 894, 898, 908, 917, 923, 927, 937, 948, 961, 975, 983, 984, 990, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 5, 6, 22, 25, 37, 40, 44, 47, 49, 52, 59, 61, 69, 76, 77, 78, 86, 89, 90, 92, 94, 101, 123, 129, 136, 150, 159, 167, 171, 180, 183, 189, 207, 208, 212, 217, 218, 220, 227, 230, 235, 237, 238, 242, 250, 252, 258, 275, 284, 292, 295, 299, 301, 307, 309, 323, 329, 334, 335, 340, 360, 368, 374, 375, 394, 402, 406, 407, 413, 415, 423, 425, 432, 445, 452, 456, 464, 472, 475, 477, 478, 493, 496, 497, 510, 523, 524, 526, 528, 542, 545, 550, 559, 563, 565, 569, 580, 585, 598, 601, 604, 627, 635, 648, 652, 662, 672, 676, 686, 709, 711, 718, 719, 735, 737, 745, 753, 755, 756, 758, 760, 761, 762, 768, 770, 785, 786, 794, 813, 818, 824, 828, 831, 846, 864, 865, 867, 892, 894, 898, 908, 917, 923, 927, 937, 948, 961, 975, 983, 984, 990, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 23, 104, 123, 159, 227, 284, 347, 375, 400, 417, 424, 479, 505, 507, 515, 522, 528, 631, 672, 692, 718, 722, 749, 761, 776, 777, 809, 812, 829, 832, 835, 850, 906, 949, 970, 984}
[INFO] [stdout] b items: {9, 38, 46, 62, 78, 85, 89, 106, 116, 119, 133, 137, 148, 167, 178, 186, 187, 210, 219, 225, 242, 289, 305, 307, 362, 484, 533, 568, 571, 590, 603, 614, 615, 665, 673, 681, 688, 691, 717, 749, 785, 787, 809, 819, 845, 859, 872, 878, 905, 979}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 985), fp: EncodedCountingMonoid(37, SumMonoid(21222)) }], item_sets: [ItemSet { range: Range(985, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 484), fp: EncodedCountingMonoid(25, SumMonoid(4043)) }, Fingerprint { range: Range(484, 985), fp: EncodedCountingMonoid(25, SumMonoid(17980)) }], item_sets: [ItemSet { range: Range(985, 9), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 347), fp: EncodedCountingMonoid(7, SumMonoid(929)) }, Fingerprint { range: Range(347, 484), fp: EncodedCountingMonoid(6, SumMonoid(2442)) }, Fingerprint { range: Range(484, 776), fp: EncodedCountingMonoid(12, SumMonoid(7522)) }, Fingerprint { range: Range(776, 985), fp: EncodedCountingMonoid(12, SumMonoid(10329)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 148), fp: EncodedCountingMonoid(12, SumMonoid(1018)) }, Fingerprint { range: Range(148, 347), fp: EncodedCountingMonoid(12, SumMonoid(2663)) }, Fingerprint { range: Range(484, 665), fp: EncodedCountingMonoid(8, SumMonoid(4578)) }, Fingerprint { range: Range(665, 776), fp: EncodedCountingMonoid(7, SumMonoid(4864)) }, Fingerprint { range: Range(776, 859), fp: EncodedCountingMonoid(5, SumMonoid(4045)) }, Fingerprint { range: Range(859, 985), fp: EncodedCountingMonoid(5, SumMonoid(4493)) }], item_sets: [ItemSet { range: Range(347, 484), items: [362], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(484, 522), fp: EncodedCountingMonoid(3, SumMonoid(1527)) }, Fingerprint { range: Range(522, 665), fp: EncodedCountingMonoid(3, SumMonoid(1681)) }, Fingerprint { range: Range(665, 722), fp: EncodedCountingMonoid(3, SumMonoid(2082)) }, Fingerprint { range: Range(722, 776), fp: EncodedCountingMonoid(3, SumMonoid(2232)) }, Fingerprint { range: Range(776, 829), fp: EncodedCountingMonoid(4, SumMonoid(3174)) }, Fingerprint { range: Range(829, 859), fp: EncodedCountingMonoid(4, SumMonoid(3346)) }], item_sets: [ItemSet { range: Range(347, 484), items: [347, 375, 400, 417, 424, 479], want_response: false }, ItemSet { range: Range(9, 104), items: [9, 23], want_response: true }, ItemSet { range: Range(104, 148), items: [104, 123], want_response: true }, ItemSet { range: Range(148, 284), items: [159, 227], want_response: true }, ItemSet { range: Range(284, 347), items: [284], want_response: true }, ItemSet { range: Range(859, 970), items: [906, 949], want_response: true }, ItemSet { range: Range(970, 985), items: [970, 984], want_response: true }], wants: [362], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(522, 603), fp: EncodedCountingMonoid(4, SumMonoid(2262)) }, Fingerprint { range: Range(603, 665), fp: EncodedCountingMonoid(3, SumMonoid(1832)) }, Fingerprint { range: Range(665, 688), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(688, 722), fp: EncodedCountingMonoid(3, SumMonoid(2096)) }], item_sets: [ItemSet { range: Range(9, 104), items: [9, 38, 46, 62, 78, 85, 89], want_response: false }, ItemSet { range: Range(104, 148), items: [106, 116, 119, 133, 137], want_response: false }, ItemSet { range: Range(148, 284), items: [148, 167, 178, 186, 187, 210, 219, 225, 242], want_response: false }, ItemSet { range: Range(284, 347), items: [289, 305, 307], want_response: false }, ItemSet { range: Range(859, 970), items: [859, 872, 878, 905], want_response: false }, ItemSet { range: Range(970, 985), items: [979], want_response: false }, ItemSet { range: Range(484, 522), items: [484], want_response: true }, ItemSet { range: Range(722, 776), items: [749], want_response: true }, ItemSet { range: Range(776, 809), items: [785, 787], want_response: true }, ItemSet { range: Range(809, 829), items: [809, 819], want_response: true }, ItemSet { range: Range(829, 859), items: [845], want_response: true }], wants: [347, 375, 400, 417, 424, 479, 23, 104, 123, 159, 227, 284, 906, 949, 970, 984], provide: [(362, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(484, 522), items: [505, 507, 515], want_response: false }, ItemSet { range: Range(722, 776), items: [722, 749, 761], want_response: false }, ItemSet { range: Range(776, 809), items: [776, 777], want_response: false }, ItemSet { range: Range(809, 829), items: [809, 812], want_response: false }, ItemSet { range: Range(829, 859), items: [829, 832, 835, 850], want_response: false }, ItemSet { range: Range(522, 603), items: [522, 528], want_response: true }, ItemSet { range: Range(603, 665), items: [631], want_response: true }, ItemSet { range: Range(665, 688), items: [672], want_response: true }, ItemSet { range: Range(688, 722), items: [692, 718], want_response: true }], wants: [38, 46, 62, 78, 85, 89, 106, 116, 119, 133, 137, 148, 167, 178, 186, 187, 210, 219, 225, 242, 289, 305, 307, 859, 872, 878, 905, 979, 484, 785, 787, 819, 845], provide: [(347, true), (375, true), (400, true), (417, true), (424, true), (479, true), (23, true), (104, true), (123, true), (159, true), (227, true), (284, true), (906, true), (949, true), (970, true), (984, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(522, 603), items: [533, 568, 571, 590], want_response: false }, ItemSet { range: Range(603, 665), items: [603, 614, 615], want_response: false }, ItemSet { range: Range(665, 688), items: [665, 673, 681], want_response: false }, ItemSet { range: Range(688, 722), items: [688, 691, 717], want_response: false }], wants: [505, 507, 515, 722, 761, 776, 777, 812, 829, 832, 835, 850, 522, 528, 631, 672, 692, 718], provide: [(38, true), (46, true), (62, true), (78, true), (85, true), (89, true), (106, true), (116, true), (119, true), (133, true), (137, true), (148, true), (167, true), (178, true), (186, true), (187, true), (210, true), (219, true), (225, true), (242, true), (289, true), (305, true), (307, true), (859, true), (872, true), (878, true), (905, true), (979, true), (484, true), (785, true), (787, true), (819, true), (845, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [533, 568, 571, 590, 603, 614, 615, 665, 673, 681, 688, 691, 717], provide: [(505, true), (507, true), (515, true), (722, true), (761, true), (776, true), (777, true), (812, true), (829, true), (832, true), (835, true), (850, true), (522, true), (528, true), (631, true), (672, true), (692, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(533, true), (568, true), (571, true), (590, true), (603, true), (614, true), (615, true), (665, true), (673, true), (681, true), (688, true), (691, true), (717, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 23, 104, 123, 159, 227, 284, 347, 375, 400, 417, 424, 479, 505, 507, 515, 522, 528, 631, 672, 692, 718, 722, 749, 761, 776, 777, 809, 812, 829, 832, 835, 850, 906, 949, 970, 984} + [362, 38, 46, 62, 78, 85, 89, 106, 116, 119, 133, 137, 148, 167, 178, 186, 187, 210, 219, 225, 242, 289, 305, 307, 859, 872, 878, 905, 979, 484, 785, 787, 819, 845, 533, 568, 571, 590, 603, 614, 615, 665, 673, 681, 688, 691, 717]
[INFO] [stdout] b all: {9, 38, 46, 62, 78, 85, 89, 106, 116, 119, 133, 137, 148, 167, 178, 186, 187, 210, 219, 225, 242, 289, 305, 307, 362, 484, 533, 568, 571, 590, 603, 614, 615, 665, 673, 681, 688, 691, 717, 749, 785, 787, 809, 819, 845, 859, 872, 878, 905, 979} + [347, 375, 400, 417, 424, 479, 23, 104, 123, 159, 227, 284, 906, 949, 970, 984, 505, 507, 515, 722, 761, 776, 777, 812, 829, 832, 835, 850, 522, 528, 631, 672, 692, 718]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 23, 38, 46, 62, 78, 85, 89, 104, 106, 116, 119, 123, 133, 137, 148, 159, 167, 178, 186, 187, 210, 219, 225, 227, 242, 284, 289, 305, 307, 347, 362, 375, 400, 417, 424, 479, 484, 505, 507, 515, 522, 528, 533, 568, 571, 590, 603, 614, 615, 631, 665, 672, 673, 681, 688, 691, 692, 717, 718, 722, 749, 761, 776, 777, 785, 787, 809, 812, 819, 829, 832, 835, 845, 850, 859, 872, 878, 905, 906, 949, 970, 979, 984]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 23, 38, 46, 62, 78, 85, 89, 104, 106, 116, 119, 123, 133, 137, 148, 159, 167, 178, 186, 187, 210, 219, 225, 227, 242, 284, 289, 305, 307, 347, 362, 375, 400, 417, 424, 479, 484, 505, 507, 515, 522, 528, 533, 568, 571, 590, 603, 614, 615, 631, 665, 672, 673, 681, 688, 691, 692, 717, 718, 722, 749, 761, 776, 777, 785, 787, 809, 812, 819, 829, 832, 835, 845, 850, 859, 872, 878, 905, 906, 949, 970, 979, 984], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 23, 38, 46, 62, 78, 85, 89, 104, 106, 116, 119, 123, 133, 137, 148, 159, 167, 178, 186, 187, 210, 219, 225, 227, 242, 284, 289, 305, 307, 347, 362, 375, 400, 417, 424, 479, 484, 505, 507, 515, 522, 528, 533, 568, 571, 590, 603, 614, 615, 631, 665, 672, 673, 681, 688, 691, 692, 717, 718, 722, 749, 761, 776, 777, 785, 787, 809, 812, 819, 829, 832, 835, 845, 850, 859, 872, 878, 905, 906, 949, 970, 979, 984], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 106, 157, 213, 257, 396, 413, 488, 553, 819, 825, 835, 893, 947, 991}
[INFO] [stdout] b items: {407, 514, 603, 773, 874}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 992), fp: EncodedCountingMonoid(15, SumMonoid(7898)) }], item_sets: [ItemSet { range: Range(992, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 773), fp: EncodedCountingMonoid(3, SumMonoid(1524)) }], item_sets: [ItemSet { range: Range(992, 5), items: [], want_response: false }, ItemSet { range: Range(773, 992), items: [773, 874], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 396), fp: EncodedCountingMonoid(5, SumMonoid(738)) }, Fingerprint { range: Range(396, 773), fp: EncodedCountingMonoid(4, SumMonoid(1850)) }], item_sets: [ItemSet { range: Range(773, 992), items: [819, 825, 835, 893, 947, 991], want_response: false }], wants: [773, 874], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 396), items: [], want_response: true }, ItemSet { range: Range(396, 603), items: [407, 514], want_response: true }, ItemSet { range: Range(603, 773), items: [603], want_response: true }], wants: [819, 825, 835, 893, 947, 991], provide: [(773, true), (874, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 396), items: [5, 106, 157, 213, 257], want_response: false }, ItemSet { range: Range(396, 603), items: [396, 413, 488, 553], want_response: false }, ItemSet { range: Range(603, 773), items: [], want_response: false }], wants: [407, 514, 603], provide: [(819, true), (825, true), (835, true), (893, true), (947, true), (991, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 106, 157, 213, 257, 396, 413, 488, 553], provide: [(407, true), (514, true), (603, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (106, true), (157, true), (213, true), (257, true), (396, true), (413, true), (488, true), (553, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 106, 157, 213, 257, 396, 413, 488, 553, 819, 825, 835, 893, 947, 991} + [773, 874, 407, 514, 603]
[INFO] [stdout] b all: {407, 514, 603, 773, 874} + [819, 825, 835, 893, 947, 991, 5, 106, 157, 213, 257, 396, 413, 488, 553]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 106, 157, 213, 257, 396, 407, 413, 488, 514, 553, 603, 773, 819, 825, 835, 874, 893, 947, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 106, 157, 213, 257, 396, 407, 413, 488, 514, 553, 603, 773, 819, 825, 835, 874, 893, 947, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 106, 157, 213, 257, 396, 407, 413, 488, 514, 553, 603, 773, 819, 825, 835, 874, 893, 947, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 29, 36, 57, 89, 93, 122, 187, 195, 217, 282, 337, 355, 386, 406, 412, 413, 460, 495, 500, 532, 538, 541, 558, 565, 589, 590, 595, 613, 663, 714, 803, 821, 828, 848, 862, 883, 898, 923, 966, 967, 970, 992}
[INFO] [stdout] b items: {1, 40, 42, 53, 55, 56, 59, 66, 68, 156, 160, 242, 245, 249, 253, 265, 285, 289, 304, 324, 325, 331, 347, 351, 365, 374, 378, 390, 414, 444, 476, 495, 541, 568, 598, 612, 618, 620, 645, 653, 655, 657, 658, 716, 717, 739, 745, 750, 758, 774, 804, 809, 818, 830, 838, 844, 850, 858, 875, 880, 913, 914, 923, 963, 970, 971, 995, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 993), fp: EncodedCountingMonoid(43, SumMonoid(22337)) }], item_sets: [ItemSet { range: Range(993, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 598), fp: EncodedCountingMonoid(33, SumMonoid(9010)) }, Fingerprint { range: Range(598, 993), fp: EncodedCountingMonoid(32, SumMonoid(24975)) }], item_sets: [ItemSet { range: Range(993, 7), items: [995, 999, 1], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 406), fp: EncodedCountingMonoid(14, SumMonoid(2392)) }, Fingerprint { range: Range(406, 598), fp: EncodedCountingMonoid(14, SumMonoid(7194)) }, Fingerprint { range: Range(598, 883), fp: EncodedCountingMonoid(8, SumMonoid(6152)) }, Fingerprint { range: Range(883, 993), fp: EncodedCountingMonoid(7, SumMonoid(6599)) }], item_sets: [], wants: [995, 999, 1], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 265), fp: EncodedCountingMonoid(14, SumMonoid(1744)) }, Fingerprint { range: Range(265, 406), fp: EncodedCountingMonoid(13, SumMonoid(4328)) }, Fingerprint { range: Range(406, 495), fp: EncodedCountingMonoid(3, SumMonoid(1334)) }, Fingerprint { range: Range(495, 598), fp: EncodedCountingMonoid(3, SumMonoid(1604)) }, Fingerprint { range: Range(598, 750), fp: EncodedCountingMonoid(13, SumMonoid(8633)) }, Fingerprint { range: Range(750, 883), fp: EncodedCountingMonoid(13, SumMonoid(10688)) }, Fingerprint { range: Range(883, 963), fp: EncodedCountingMonoid(3, SumMonoid(2750)) }, Fingerprint { range: Range(963, 993), fp: EncodedCountingMonoid(3, SumMonoid(2904)) }], item_sets: [], wants: [], provide: [(995, true), (999, true), (1, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 93), fp: EncodedCountingMonoid(5, SumMonoid(218)) }, Fingerprint { range: Range(93, 265), fp: EncodedCountingMonoid(5, SumMonoid(814)) }, Fingerprint { range: Range(495, 558), fp: EncodedCountingMonoid(5, SumMonoid(2606)) }, Fingerprint { range: Range(558, 598), fp: EncodedCountingMonoid(5, SumMonoid(2897)) }, Fingerprint { range: Range(750, 848), fp: EncodedCountingMonoid(3, SumMonoid(2452)) }], item_sets: [ItemSet { range: Range(265, 355), items: [282, 337], want_response: true }, ItemSet { range: Range(355, 406), items: [355, 386], want_response: true }, ItemSet { range: Range(406, 413), items: [406, 412], want_response: true }, ItemSet { range: Range(413, 495), items: [413, 460], want_response: true }, ItemSet { range: Range(598, 714), items: [613, 663], want_response: true }, ItemSet { range: Range(714, 750), items: [714], want_response: true }, ItemSet { range: Range(848, 883), items: [848, 862], want_response: true }, ItemSet { range: Range(883, 923), items: [883, 898], want_response: true }, ItemSet { range: Range(923, 963), items: [923], want_response: true }, ItemSet { range: Range(963, 970), items: [966, 967], want_response: true }, ItemSet { range: Range(970, 993), items: [970, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 56), fp: EncodedCountingMonoid(4, SumMonoid(190)) }, Fingerprint { range: Range(56, 93), fp: EncodedCountingMonoid(4, SumMonoid(249)) }, Fingerprint { range: Range(93, 245), fp: EncodedCountingMonoid(3, SumMonoid(558)) }, Fingerprint { range: Range(245, 265), fp: EncodedCountingMonoid(3, SumMonoid(747)) }, Fingerprint { range: Range(750, 818), fp: EncodedCountingMonoid(5, SumMonoid(3895)) }, Fingerprint { range: Range(818, 848), fp: EncodedCountingMonoid(4, SumMonoid(3330)) }], item_sets: [ItemSet { range: Range(265, 355), items: [265, 285, 289, 304, 324, 325, 331, 347, 351], want_response: false }, ItemSet { range: Range(355, 406), items: [365, 374, 378, 390], want_response: false }, ItemSet { range: Range(406, 413), items: [], want_response: false }, ItemSet { range: Range(413, 495), items: [414, 444, 476], want_response: false }, ItemSet { range: Range(598, 714), items: [598, 612, 618, 620, 645, 653, 655, 657, 658], want_response: false }, ItemSet { range: Range(714, 750), items: [716, 717, 739, 745], want_response: false }, ItemSet { range: Range(848, 883), items: [850, 858, 875, 880], want_response: false }, ItemSet { range: Range(883, 923), items: [913, 914], want_response: false }, ItemSet { range: Range(923, 963), items: [923], want_response: false }, ItemSet { range: Range(963, 970), items: [963], want_response: false }, ItemSet { range: Range(970, 993), items: [970, 971], want_response: false }, ItemSet { range: Range(495, 558), items: [495, 541], want_response: true }, ItemSet { range: Range(558, 598), items: [568], want_response: true }], wants: [282, 337, 355, 386, 406, 412, 413, 460, 613, 663, 714, 848, 862, 883, 898, 966, 967, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(93, 195), fp: EncodedCountingMonoid(3, SumMonoid(402)) }], item_sets: [ItemSet { range: Range(495, 558), items: [495, 500, 532, 538, 541], want_response: false }, ItemSet { range: Range(558, 598), items: [558, 565, 589, 590, 595], want_response: false }, ItemSet { range: Range(7, 36), items: [7, 29], want_response: true }, ItemSet { range: Range(36, 56), items: [36], want_response: true }, ItemSet { range: Range(56, 93), items: [57, 89], want_response: true }, ItemSet { range: Range(195, 245), items: [195, 217], want_response: true }, ItemSet { range: Range(245, 265), items: [], want_response: true }, ItemSet { range: Range(750, 818), items: [803], want_response: true }, ItemSet { range: Range(818, 848), items: [821, 828], want_response: true }], wants: [265, 285, 289, 304, 324, 325, 331, 347, 351, 365, 374, 378, 390, 414, 444, 476, 598, 612, 618, 620, 645, 653, 655, 657, 658, 716, 717, 739, 745, 850, 858, 875, 880, 913, 914, 963, 971, 568], provide: [(282, true), (337, true), (355, true), (386, true), (406, true), (412, true), (413, true), (460, true), (613, true), (663, true), (714, true), (848, true), (862, true), (883, true), (898, true), (966, true), (967, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 36), items: [], want_response: false }, ItemSet { range: Range(36, 56), items: [40, 42, 53, 55], want_response: false }, ItemSet { range: Range(56, 93), items: [56, 59, 66, 68], want_response: false }, ItemSet { range: Range(195, 245), items: [242], want_response: false }, ItemSet { range: Range(245, 265), items: [245, 249, 253], want_response: false }, ItemSet { range: Range(750, 818), items: [750, 758, 774, 804, 809], want_response: false }, ItemSet { range: Range(818, 848), items: [818, 830, 838, 844], want_response: false }, ItemSet { range: Range(93, 195), items: [156, 160], want_response: true }], wants: [500, 532, 538, 558, 565, 589, 590, 595, 7, 29, 36, 57, 89, 195, 217, 803, 821, 828], provide: [(265, true), (285, true), (289, true), (304, true), (324, true), (325, true), (331, true), (347, true), (351, true), (365, true), (374, true), (378, true), (390, true), (414, true), (444, true), (476, true), (598, true), (612, true), (618, true), (620, true), (645, true), (653, true), (655, true), (657, true), (658, true), (716, true), (717, true), (739, true), (745, true), (850, true), (858, true), (875, true), (880, true), (913, true), (914, true), (963, true), (971, true), (568, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(93, 195), items: [93, 122, 187], want_response: false }], wants: [40, 42, 53, 55, 56, 59, 66, 68, 242, 245, 249, 253, 750, 758, 774, 804, 809, 818, 830, 838, 844, 156, 160], provide: [(500, true), (532, true), (538, true), (558, true), (565, true), (589, true), (590, true), (595, true), (7, true), (29, true), (36, true), (57, true), (89, true), (195, true), (217, true), (803, true), (821, true), (828, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [93, 122, 187], provide: [(40, true), (42, true), (53, true), (55, true), (56, true), (59, true), (66, true), (68, true), (242, true), (245, true), (249, true), (253, true), (750, true), (758, true), (774, true), (804, true), (809, true), (818, true), (830, true), (838, true), (844, true), (156, true), (160, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(93, true), (122, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 29, 36, 57, 89, 93, 122, 187, 195, 217, 282, 337, 355, 386, 406, 412, 413, 460, 495, 500, 532, 538, 541, 558, 565, 589, 590, 595, 613, 663, 714, 803, 821, 828, 848, 862, 883, 898, 923, 966, 967, 970, 992} + [995, 999, 1, 265, 285, 289, 304, 324, 325, 331, 347, 351, 365, 374, 378, 390, 414, 444, 476, 598, 612, 618, 620, 645, 653, 655, 657, 658, 716, 717, 739, 745, 850, 858, 875, 880, 913, 914, 963, 971, 568, 40, 42, 53, 55, 56, 59, 66, 68, 242, 245, 249, 253, 750, 758, 774, 804, 809, 818, 830, 838, 844, 156, 160]
[INFO] [stdout] b all: {1, 40, 42, 53, 55, 56, 59, 66, 68, 156, 160, 242, 245, 249, 253, 265, 285, 289, 304, 324, 325, 331, 347, 351, 365, 374, 378, 390, 414, 444, 476, 495, 541, 568, 598, 612, 618, 620, 645, 653, 655, 657, 658, 716, 717, 739, 745, 750, 758, 774, 804, 809, 818, 830, 838, 844, 850, 858, 875, 880, 913, 914, 923, 963, 970, 971, 995, 999} + [282, 337, 355, 386, 406, 412, 413, 460, 613, 663, 714, 848, 862, 883, 898, 966, 967, 992, 500, 532, 538, 558, 565, 589, 590, 595, 7, 29, 36, 57, 89, 195, 217, 803, 821, 828, 93, 122, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 29, 36, 40, 42, 53, 55, 56, 57, 59, 66, 68, 89, 93, 122, 156, 160, 187, 195, 217, 242, 245, 249, 253, 265, 282, 285, 289, 304, 324, 325, 331, 337, 347, 351, 355, 365, 374, 378, 386, 390, 406, 412, 413, 414, 444, 460, 476, 495, 500, 532, 538, 541, 558, 565, 568, 589, 590, 595, 598, 612, 613, 618, 620, 645, 653, 655, 657, 658, 663, 714, 716, 717, 739, 745, 750, 758, 774, 803, 804, 809, 818, 821, 828, 830, 838, 844, 848, 850, 858, 862, 875, 880, 883, 898, 913, 914, 923, 963, 966, 967, 970, 971, 992, 995, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 29, 36, 40, 42, 53, 55, 56, 57, 59, 66, 68, 89, 93, 122, 156, 160, 187, 195, 217, 242, 245, 249, 253, 265, 282, 285, 289, 304, 324, 325, 331, 337, 347, 351, 355, 365, 374, 378, 386, 390, 406, 412, 413, 414, 444, 460, 476, 495, 500, 532, 538, 541, 558, 565, 568, 589, 590, 595, 598, 612, 613, 618, 620, 645, 653, 655, 657, 658, 663, 714, 716, 717, 739, 745, 750, 758, 774, 803, 804, 809, 818, 821, 828, 830, 838, 844, 848, 850, 858, 862, 875, 880, 883, 898, 913, 914, 923, 963, 966, 967, 970, 971, 992, 995, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 29, 36, 40, 42, 53, 55, 56, 57, 59, 66, 68, 89, 93, 122, 156, 160, 187, 195, 217, 242, 245, 249, 253, 265, 282, 285, 289, 304, 324, 325, 331, 337, 347, 351, 355, 365, 374, 378, 386, 390, 406, 412, 413, 414, 444, 460, 476, 495, 500, 532, 538, 541, 558, 565, 568, 589, 590, 595, 598, 612, 613, 618, 620, 645, 653, 655, 657, 658, 663, 714, 716, 717, 739, 745, 750, 758, 774, 803, 804, 809, 818, 821, 828, 830, 838, 844, 848, 850, 858, 862, 875, 880, 883, 898, 913, 914, 923, 963, 966, 967, 970, 971, 992, 995, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {202, 286, 365, 455, 643, 882}
[INFO] [stdout] b items: {43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183, 211, 217, 232, 237, 246, 256, 261, 283, 299, 329, 342, 345, 367, 380, 384, 436, 447, 467, 505, 525, 542, 549, 554, 575, 581, 604, 607, 614, 623, 625, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875, 884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(202, 883), fp: EncodedCountingMonoid(6, SumMonoid(2833)) }], item_sets: [ItemSet { range: Range(883, 202), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(202, 575), fp: EncodedCountingMonoid(23, SumMonoid(8414)) }, Fingerprint { range: Range(575, 883), fp: EncodedCountingMonoid(22, SumMonoid(15738)) }], item_sets: [ItemSet { range: Range(883, 202), items: [884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991, 43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(202, 365), items: [202, 286], want_response: true }, ItemSet { range: Range(365, 575), items: [365, 455], want_response: true }, ItemSet { range: Range(575, 883), items: [643, 882], want_response: true }], wants: [884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991, 43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(202, 365), items: [211, 217, 232, 237, 246, 256, 261, 283, 299, 329, 342, 345], want_response: false }, ItemSet { range: Range(365, 575), items: [367, 380, 384, 436, 447, 467, 505, 525, 542, 549, 554], want_response: false }, ItemSet { range: Range(575, 883), items: [575, 581, 604, 607, 614, 623, 625, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875], want_response: false }], wants: [202, 286, 365, 455, 643, 882], provide: [(884, true), (887, true), (900, true), (911, true), (912, true), (924, true), (934, true), (944, true), (965, true), (972, true), (978, true), (984, true), (991, true), (43, true), (87, true), (88, true), (101, true), (103, true), (117, true), (125, true), (127, true), (137, true), (138, true), (142, true), (145, true), (153, true), (154, true), (173, true), (183, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [211, 217, 232, 237, 246, 256, 261, 283, 299, 329, 342, 345, 367, 380, 384, 436, 447, 467, 505, 525, 542, 549, 554, 575, 581, 604, 607, 614, 623, 625, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875], provide: [(202, true), (286, true), (365, true), (455, true), (643, true), (882, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(211, true), (217, true), (232, true), (237, true), (246, true), (256, true), (261, true), (283, true), (299, true), (329, true), (342, true), (345, true), (367, true), (380, true), (384, true), (436, true), (447, true), (467, true), (505, true), (525, true), (542, true), (549, true), (554, true), (575, true), (581, true), (604, true), (607, true), (614, true), (623, true), (625, true), (659, true), (667, true), (695, true), (713, true), (715, true), (753, true), (765, true), (780, true), (784, true), (787, true), (791, true), (811, true), (855, true), (859, true), (875, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {202, 286, 365, 455, 643, 882} + [884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991, 43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183, 211, 217, 232, 237, 246, 256, 261, 283, 299, 329, 342, 345, 367, 380, 384, 436, 447, 467, 505, 525, 542, 549, 554, 575, 581, 604, 607, 614, 623, 625, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875]
[INFO] [stdout] b all: {43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183, 211, 217, 232, 237, 246, 256, 261, 283, 299, 329, 342, 345, 367, 380, 384, 436, 447, 467, 505, 525, 542, 549, 554, 575, 581, 604, 607, 614, 623, 625, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875, 884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991} + [202, 286, 365, 455, 643, 882]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183, 202, 211, 217, 232, 237, 246, 256, 261, 283, 286, 299, 329, 342, 345, 365, 367, 380, 384, 436, 447, 455, 467, 505, 525, 542, 549, 554, 575, 581, 604, 607, 614, 623, 625, 643, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875, 882, 884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183, 202, 211, 217, 232, 237, 246, 256, 261, 283, 286, 299, 329, 342, 345, 365, 367, 380, 384, 436, 447, 455, 467, 505, 525, 542, 549, 554, 575, 581, 604, 607, 614, 623, 625, 643, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875, 882, 884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [43, 87, 88, 101, 103, 117, 125, 127, 137, 138, 142, 145, 153, 154, 173, 183, 202, 211, 217, 232, 237, 246, 256, 261, 283, 286, 299, 329, 342, 345, 365, 367, 380, 384, 436, 447, 455, 467, 505, 525, 542, 549, 554, 575, 581, 604, 607, 614, 623, 625, 643, 659, 667, 695, 713, 715, 753, 765, 780, 784, 787, 791, 811, 855, 859, 875, 882, 884, 887, 900, 911, 912, 924, 934, 944, 965, 972, 978, 984, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {11, 37, 39, 45, 47, 54, 71, 73, 83, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202, 207, 208, 212, 220, 222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 369, 379, 394, 400, 405, 412, 413, 426, 427, 439, 442, 444, 492, 495, 527, 535, 557, 576, 581, 584, 597, 611, 613, 627, 631, 646, 664, 665, 676, 679, 691, 705, 717, 718, 741, 742, 744, 768, 778, 782, 787, 792, 827, 841, 883, 900, 914, 916, 920, 935, 937, 973, 989, 997}
[INFO] [stdout] b items: {96, 110, 205, 362, 399, 414, 446, 589, 627, 775, 824, 934}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 998), fp: EncodedCountingMonoid(92, SumMonoid(42439)) }], item_sets: [ItemSet { range: Range(998, 11), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(11, 446), fp: EncodedCountingMonoid(6, SumMonoid(1586)) }, Fingerprint { range: Range(446, 998), fp: EncodedCountingMonoid(6, SumMonoid(4195)) }], item_sets: [ItemSet { range: Range(998, 11), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 222), fp: EncodedCountingMonoid(25, SumMonoid(3263)) }, Fingerprint { range: Range(222, 446), fp: EncodedCountingMonoid(25, SumMonoid(8423)) }, Fingerprint { range: Range(446, 718), fp: EncodedCountingMonoid(21, SumMonoid(12869)) }, Fingerprint { range: Range(718, 998), fp: EncodedCountingMonoid(21, SumMonoid(17884)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(11, 205), items: [96, 110], want_response: true }, ItemSet { range: Range(205, 222), items: [205], want_response: true }, ItemSet { range: Range(222, 414), items: [362, 399], want_response: true }, ItemSet { range: Range(414, 446), items: [414], want_response: true }, ItemSet { range: Range(446, 627), items: [446, 589], want_response: true }, ItemSet { range: Range(627, 718), items: [627], want_response: true }, ItemSet { range: Range(718, 934), items: [775, 824], want_response: true }, ItemSet { range: Range(934, 998), items: [934], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(11, 205), items: [11, 37, 39, 45, 47, 54, 71, 73, 83, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202], want_response: false }, ItemSet { range: Range(205, 222), items: [207, 208, 212, 220], want_response: false }, ItemSet { range: Range(222, 414), items: [222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 369, 379, 394, 400, 405, 412, 413], want_response: false }, ItemSet { range: Range(414, 446), items: [426, 427, 439, 442, 444], want_response: false }, ItemSet { range: Range(446, 627), items: [492, 495, 527, 535, 557, 576, 581, 584, 597, 611, 613], want_response: false }, ItemSet { range: Range(627, 718), items: [627, 631, 646, 664, 665, 676, 679, 691, 705, 717], want_response: false }, ItemSet { range: Range(718, 934), items: [718, 741, 742, 744, 768, 778, 782, 787, 792, 827, 841, 883, 900, 914, 916, 920], want_response: false }, ItemSet { range: Range(934, 998), items: [935, 937, 973, 989, 997], want_response: false }], wants: [96, 110, 205, 362, 399, 414, 446, 589, 775, 824, 934], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [11, 37, 39, 45, 47, 54, 71, 73, 83, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202, 207, 208, 212, 220, 222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 369, 379, 394, 400, 405, 412, 413, 426, 427, 439, 442, 444, 492, 495, 527, 535, 557, 576, 581, 584, 597, 611, 613, 631, 646, 664, 665, 676, 679, 691, 705, 717, 718, 741, 742, 744, 768, 778, 782, 787, 792, 827, 841, 883, 900, 914, 916, 920, 935, 937, 973, 989, 997], provide: [(96, true), (110, true), (205, true), (362, true), (399, true), (414, true), (446, true), (589, true), (775, true), (824, true), (934, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(11, true), (37, true), (39, true), (45, true), (47, true), (54, true), (71, true), (73, true), (83, true), (134, true), (135, true), (140, true), (141, true), (143, true), (157, true), (172, true), (173, true), (175, true), (186, true), (198, true), (202, true), (207, true), (208, true), (212, true), (220, true), (222, true), (225, true), (227, true), (228, true), (243, true), (250, true), (267, true), (268, true), (273, true), (288, true), (298, true), (335, true), (349, true), (369, true), (379, true), (394, true), (400, true), (405, true), (412, true), (413, true), (426, true), (427, true), (439, true), (442, true), (444, true), (492, true), (495, true), (527, true), (535, true), (557, true), (576, true), (581, true), (584, true), (597, true), (611, true), (613, true), (631, true), (646, true), (664, true), (665, true), (676, true), (679, true), (691, true), (705, true), (717, true), (718, true), (741, true), (742, true), (744, true), (768, true), (778, true), (782, true), (787, true), (792, true), (827, true), (841, true), (883, true), (900, true), (914, true), (916, true), (920, true), (935, true), (937, true), (973, true), (989, true), (997, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {11, 37, 39, 45, 47, 54, 71, 73, 83, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202, 207, 208, 212, 220, 222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 369, 379, 394, 400, 405, 412, 413, 426, 427, 439, 442, 444, 492, 495, 527, 535, 557, 576, 581, 584, 597, 611, 613, 627, 631, 646, 664, 665, 676, 679, 691, 705, 717, 718, 741, 742, 744, 768, 778, 782, 787, 792, 827, 841, 883, 900, 914, 916, 920, 935, 937, 973, 989, 997} + [96, 110, 205, 362, 399, 414, 446, 589, 775, 824, 934]
[INFO] [stdout] b all: {96, 110, 205, 362, 399, 414, 446, 589, 627, 775, 824, 934} + [11, 37, 39, 45, 47, 54, 71, 73, 83, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202, 207, 208, 212, 220, 222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 369, 379, 394, 400, 405, 412, 413, 426, 427, 439, 442, 444, 492, 495, 527, 535, 557, 576, 581, 584, 597, 611, 613, 631, 646, 664, 665, 676, 679, 691, 705, 717, 718, 741, 742, 744, 768, 778, 782, 787, 792, 827, 841, 883, 900, 914, 916, 920, 935, 937, 973, 989, 997]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [11, 37, 39, 45, 47, 54, 71, 73, 83, 96, 110, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202, 205, 207, 208, 212, 220, 222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 362, 369, 379, 394, 399, 400, 405, 412, 413, 414, 426, 427, 439, 442, 444, 446, 492, 495, 527, 535, 557, 576, 581, 584, 589, 597, 611, 613, 627, 631, 646, 664, 665, 676, 679, 691, 705, 717, 718, 741, 742, 744, 768, 775, 778, 782, 787, 792, 824, 827, 841, 883, 900, 914, 916, 920, 934, 935, 937, 973, 989, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [11, 37, 39, 45, 47, 54, 71, 73, 83, 96, 110, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202, 205, 207, 208, 212, 220, 222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 362, 369, 379, 394, 399, 400, 405, 412, 413, 414, 426, 427, 439, 442, 444, 446, 492, 495, 527, 535, 557, 576, 581, 584, 589, 597, 611, 613, 627, 631, 646, 664, 665, 676, 679, 691, 705, 717, 718, 741, 742, 744, 768, 775, 778, 782, 787, 792, 824, 827, 841, 883, 900, 914, 916, 920, 934, 935, 937, 973, 989, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [11, 37, 39, 45, 47, 54, 71, 73, 83, 96, 110, 134, 135, 140, 141, 143, 157, 172, 173, 175, 186, 198, 202, 205, 207, 208, 212, 220, 222, 225, 227, 228, 243, 250, 267, 268, 273, 288, 298, 335, 349, 362, 369, 379, 394, 399, 400, 405, 412, 413, 414, 426, 427, 439, 442, 444, 446, 492, 495, 527, 535, 557, 576, 581, 584, 589, 597, 611, 613, 627, 631, 646, 664, 665, 676, 679, 691, 705, 717, 718, 741, 742, 744, 768, 775, 778, 782, 787, 792, 824, 827, 841, 883, 900, 914, 916, 920, 934, 935, 937, 973, 989, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 25, 68, 73, 95, 107, 117, 146, 241, 250, 256, 355, 383, 393, 450, 465, 474, 475, 476, 527, 540, 544, 588, 652, 691, 710, 711, 724, 739, 803, 818, 839, 884, 889, 914, 917, 923, 944, 967, 973, 977, 990, 996}
[INFO] [stdout] b items: {92, 241, 402, 572, 708, 732, 763, 794, 852, 861, 866}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 997), fp: EncodedCountingMonoid(43, SumMonoid(24115)) }], item_sets: [ItemSet { range: Range(997, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 763), fp: EncodedCountingMonoid(6, SumMonoid(2747)) }, Fingerprint { range: Range(763, 997), fp: EncodedCountingMonoid(5, SumMonoid(4136)) }], item_sets: [ItemSet { range: Range(997, 6), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 465), fp: EncodedCountingMonoid(15, SumMonoid(2965)) }, Fingerprint { range: Range(465, 763), fp: EncodedCountingMonoid(14, SumMonoid(8316)) }, Fingerprint { range: Range(763, 923), fp: EncodedCountingMonoid(7, SumMonoid(6064)) }, Fingerprint { range: Range(923, 997), fp: EncodedCountingMonoid(7, SumMonoid(6770)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(763, 861), fp: EncodedCountingMonoid(3, SumMonoid(2409)) }], item_sets: [ItemSet { range: Range(6, 402), items: [92, 241], want_response: true }, ItemSet { range: Range(402, 465), items: [402], want_response: true }, ItemSet { range: Range(465, 732), items: [572, 708], want_response: true }, ItemSet { range: Range(732, 763), items: [732], want_response: true }, ItemSet { range: Range(861, 923), items: [861, 866], want_response: true }, ItemSet { range: Range(923, 997), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 402), items: [6, 25, 68, 73, 95, 107, 117, 146, 241, 250, 256, 355, 383, 393], want_response: false }, ItemSet { range: Range(402, 465), items: [450], want_response: false }, ItemSet { range: Range(465, 732), items: [465, 474, 475, 476, 527, 540, 544, 588, 652, 691, 710, 711, 724], want_response: false }, ItemSet { range: Range(732, 763), items: [739], want_response: false }, ItemSet { range: Range(861, 923), items: [884, 889, 914, 917], want_response: false }, ItemSet { range: Range(923, 997), items: [923, 944, 967, 973, 977, 990, 996], want_response: false }, ItemSet { range: Range(763, 839), items: [803, 818], want_response: true }, ItemSet { range: Range(839, 861), items: [839], want_response: true }], wants: [92, 402, 572, 708, 732, 861, 866], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(763, 839), items: [763, 794], want_response: false }, ItemSet { range: Range(839, 861), items: [852], want_response: false }], wants: [6, 25, 68, 73, 95, 107, 117, 146, 250, 256, 355, 383, 393, 450, 465, 474, 475, 476, 527, 540, 544, 588, 652, 691, 710, 711, 724, 739, 884, 889, 914, 917, 923, 944, 967, 973, 977, 990, 996, 803, 818, 839], provide: [(92, true), (402, true), (572, true), (708, true), (732, true), (861, true), (866, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [763, 794, 852], provide: [(6, true), (25, true), (68, true), (73, true), (95, true), (107, true), (117, true), (146, true), (250, true), (256, true), (355, true), (383, true), (393, true), (450, true), (465, true), (474, true), (475, true), (476, true), (527, true), (540, true), (544, true), (588, true), (652, true), (691, true), (710, true), (711, true), (724, true), (739, true), (884, true), (889, true), (914, true), (917, true), (923, true), (944, true), (967, true), (973, true), (977, true), (990, true), (996, true), (803, true), (818, true), (839, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(763, true), (794, true), (852, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 25, 68, 73, 95, 107, 117, 146, 241, 250, 256, 355, 383, 393, 450, 465, 474, 475, 476, 527, 540, 544, 588, 652, 691, 710, 711, 724, 739, 803, 818, 839, 884, 889, 914, 917, 923, 944, 967, 973, 977, 990, 996} + [92, 402, 572, 708, 732, 861, 866, 763, 794, 852]
[INFO] [stdout] b all: {92, 241, 402, 572, 708, 732, 763, 794, 852, 861, 866} + [6, 25, 68, 73, 95, 107, 117, 146, 250, 256, 355, 383, 393, 450, 465, 474, 475, 476, 527, 540, 544, 588, 652, 691, 710, 711, 724, 739, 884, 889, 914, 917, 923, 944, 967, 973, 977, 990, 996, 803, 818, 839]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 25, 68, 73, 92, 95, 107, 117, 146, 241, 250, 256, 355, 383, 393, 402, 450, 465, 474, 475, 476, 527, 540, 544, 572, 588, 652, 691, 708, 710, 711, 724, 732, 739, 763, 794, 803, 818, 839, 852, 861, 866, 884, 889, 914, 917, 923, 944, 967, 973, 977, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 25, 68, 73, 92, 95, 107, 117, 146, 241, 250, 256, 355, 383, 393, 402, 450, 465, 474, 475, 476, 527, 540, 544, 572, 588, 652, 691, 708, 710, 711, 724, 732, 739, 763, 794, 803, 818, 839, 852, 861, 866, 884, 889, 914, 917, 923, 944, 967, 973, 977, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 25, 68, 73, 92, 95, 107, 117, 146, 241, 250, 256, 355, 383, 393, 402, 450, 465, 474, 475, 476, 527, 540, 544, 572, 588, 652, 691, 708, 710, 711, 724, 732, 739, 763, 794, 803, 818, 839, 852, 861, 866, 884, 889, 914, 917, 923, 944, 967, 973, 977, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {27, 54, 74, 80, 85, 142, 159, 160, 169, 184, 212, 248, 317, 357, 434, 480, 497, 570, 582, 595, 635, 641, 654, 674, 675, 681, 683, 704, 802, 840, 883, 888, 899, 957, 965, 969, 978, 984, 997}
[INFO] [stdout] b items: {48, 52, 64, 128, 131, 141, 147, 157, 163, 193, 213, 222, 246, 272, 286, 298, 309, 315, 360, 423, 463, 473, 476, 488, 489, 506, 510, 512, 522, 531, 571, 577, 591, 608, 621, 648, 650, 656, 678, 684, 728, 763, 792, 800, 863, 871, 875, 886, 899, 962, 971}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 998), fp: EncodedCountingMonoid(39, SumMonoid(20935)) }], item_sets: [ItemSet { range: Range(998, 27), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(27, 510), fp: EncodedCountingMonoid(26, SumMonoid(7063)) }, Fingerprint { range: Range(510, 998), fp: EncodedCountingMonoid(25, SumMonoid(17769)) }], item_sets: [ItemSet { range: Range(998, 27), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 184), fp: EncodedCountingMonoid(9, SumMonoid(950)) }, Fingerprint { range: Range(184, 510), fp: EncodedCountingMonoid(8, SumMonoid(2729)) }, Fingerprint { range: Range(510, 802), fp: EncodedCountingMonoid(11, SumMonoid(7094)) }, Fingerprint { range: Range(802, 998), fp: EncodedCountingMonoid(11, SumMonoid(10162)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(27, 141), fp: EncodedCountingMonoid(5, SumMonoid(423)) }, Fingerprint { range: Range(141, 184), fp: EncodedCountingMonoid(4, SumMonoid(608)) }, Fingerprint { range: Range(184, 360), fp: EncodedCountingMonoid(9, SumMonoid(2354)) }, Fingerprint { range: Range(360, 510), fp: EncodedCountingMonoid(8, SumMonoid(3678)) }, Fingerprint { range: Range(510, 648), fp: EncodedCountingMonoid(9, SumMonoid(5043)) }, Fingerprint { range: Range(648, 802), fp: EncodedCountingMonoid(9, SumMonoid(6399)) }, Fingerprint { range: Range(802, 899), fp: EncodedCountingMonoid(4, SumMonoid(3495)) }, Fingerprint { range: Range(899, 998), fp: EncodedCountingMonoid(3, SumMonoid(2832)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 80), fp: EncodedCountingMonoid(3, SumMonoid(155)) }, Fingerprint { range: Range(184, 317), fp: EncodedCountingMonoid(3, SumMonoid(644)) }, Fingerprint { range: Range(510, 635), fp: EncodedCountingMonoid(3, SumMonoid(1747)) }, Fingerprint { range: Range(648, 681), fp: EncodedCountingMonoid(3, SumMonoid(2003)) }, Fingerprint { range: Range(681, 802), fp: EncodedCountingMonoid(3, SumMonoid(2068)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(4, SumMonoid(3790)) }, Fingerprint { range: Range(978, 998), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(80, 141), items: [80, 85], want_response: true }, ItemSet { range: Range(141, 160), items: [142, 159], want_response: true }, ItemSet { range: Range(160, 184), items: [160, 169], want_response: true }, ItemSet { range: Range(317, 360), items: [317, 357], want_response: true }, ItemSet { range: Range(360, 497), items: [434, 480], want_response: true }, ItemSet { range: Range(497, 510), items: [497], want_response: true }, ItemSet { range: Range(635, 648), items: [635, 641], want_response: true }, ItemSet { range: Range(802, 883), items: [802, 840], want_response: true }, ItemSet { range: Range(883, 899), items: [883, 888], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(184, 286), fp: EncodedCountingMonoid(5, SumMonoid(1146)) }, Fingerprint { range: Range(286, 317), fp: EncodedCountingMonoid(4, SumMonoid(1208)) }, Fingerprint { range: Range(510, 577), fp: EncodedCountingMonoid(5, SumMonoid(2646)) }, Fingerprint { range: Range(577, 635), fp: EncodedCountingMonoid(4, SumMonoid(2397)) }, Fingerprint { range: Range(681, 792), fp: EncodedCountingMonoid(3, SumMonoid(2175)) }], item_sets: [ItemSet { range: Range(80, 141), items: [128, 131], want_response: false }, ItemSet { range: Range(141, 160), items: [141, 147, 157], want_response: false }, ItemSet { range: Range(160, 184), items: [163], want_response: false }, ItemSet { range: Range(317, 360), items: [], want_response: false }, ItemSet { range: Range(360, 497), items: [360, 423, 463, 473, 476, 488, 489], want_response: false }, ItemSet { range: Range(497, 510), items: [506], want_response: false }, ItemSet { range: Range(635, 648), items: [], want_response: false }, ItemSet { range: Range(802, 883), items: [863, 871, 875], want_response: false }, ItemSet { range: Range(883, 899), items: [886], want_response: false }, ItemSet { range: Range(27, 64), items: [48, 52], want_response: true }, ItemSet { range: Range(64, 80), items: [64], want_response: true }, ItemSet { range: Range(648, 656), items: [648, 650], want_response: true }, ItemSet { range: Range(656, 681), items: [656, 678], want_response: true }, ItemSet { range: Range(792, 802), items: [792, 800], want_response: true }, ItemSet { range: Range(899, 971), items: [899, 962], want_response: true }, ItemSet { range: Range(971, 978), items: [971], want_response: true }, ItemSet { range: Range(978, 998), items: [], want_response: true }], wants: [80, 85, 142, 159, 160, 169, 317, 357, 434, 480, 497, 635, 641, 802, 840, 883, 888], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(27, 64), items: [27, 54], want_response: false }, ItemSet { range: Range(64, 80), items: [74], want_response: false }, ItemSet { range: Range(648, 656), items: [654], want_response: false }, ItemSet { range: Range(656, 681), items: [674, 675], want_response: false }, ItemSet { range: Range(792, 802), items: [], want_response: false }, ItemSet { range: Range(899, 971), items: [899, 957, 965, 969], want_response: false }, ItemSet { range: Range(971, 978), items: [], want_response: false }, ItemSet { range: Range(978, 998), items: [978, 984, 997], want_response: false }, ItemSet { range: Range(184, 248), items: [184, 212], want_response: true }, ItemSet { range: Range(248, 286), items: [248], want_response: true }, ItemSet { range: Range(286, 317), items: [], want_response: true }, ItemSet { range: Range(510, 577), items: [570], want_response: true }, ItemSet { range: Range(577, 635), items: [582, 595], want_response: true }, ItemSet { range: Range(681, 704), items: [681, 683], want_response: true }, ItemSet { range: Range(704, 792), items: [704], want_response: true }], wants: [128, 131, 141, 147, 157, 163, 360, 423, 463, 473, 476, 488, 489, 506, 863, 871, 875, 886, 48, 52, 64, 648, 650, 656, 678, 792, 800, 962, 971], provide: [(80, true), (85, true), (142, true), (159, true), (160, true), (169, true), (317, true), (357, true), (434, true), (480, true), (497, true), (635, true), (641, true), (802, true), (840, true), (883, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 248), items: [193, 213, 222, 246], want_response: false }, ItemSet { range: Range(248, 286), items: [272], want_response: false }, ItemSet { range: Range(286, 317), items: [286, 298, 309, 315], want_response: false }, ItemSet { range: Range(510, 577), items: [510, 512, 522, 531, 571], want_response: false }, ItemSet { range: Range(577, 635), items: [577, 591, 608, 621], want_response: false }, ItemSet { range: Range(681, 704), items: [684], want_response: false }, ItemSet { range: Range(704, 792), items: [728, 763], want_response: false }], wants: [27, 54, 74, 654, 674, 675, 957, 965, 969, 978, 984, 997, 184, 212, 248, 570, 582, 595, 681, 683, 704], provide: [(128, true), (131, true), (141, true), (147, true), (157, true), (163, true), (360, true), (423, true), (463, true), (473, true), (476, true), (488, true), (489, true), (506, true), (863, true), (871, true), (875, true), (886, true), (48, true), (52, true), (64, true), (648, true), (650, true), (656, true), (678, true), (792, true), (800, true), (962, true), (971, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [193, 213, 222, 246, 272, 286, 298, 309, 315, 510, 512, 522, 531, 571, 577, 591, 608, 621, 684, 728, 763], provide: [(27, true), (54, true), (74, true), (654, true), (674, true), (675, true), (957, true), (965, true), (969, true), (978, true), (984, true), (997, true), (184, true), (212, true), (248, true), (570, true), (582, true), (595, true), (681, true), (683, true), (704, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(193, true), (213, true), (222, true), (246, true), (272, true), (286, true), (298, true), (309, true), (315, true), (510, true), (512, true), (522, true), (531, true), (571, true), (577, true), (591, true), (608, true), (621, true), (684, true), (728, true), (763, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {27, 54, 74, 80, 85, 142, 159, 160, 169, 184, 212, 248, 317, 357, 434, 480, 497, 570, 582, 595, 635, 641, 654, 674, 675, 681, 683, 704, 802, 840, 883, 888, 899, 957, 965, 969, 978, 984, 997} + [128, 131, 141, 147, 157, 163, 360, 423, 463, 473, 476, 488, 489, 506, 863, 871, 875, 886, 48, 52, 64, 648, 650, 656, 678, 792, 800, 962, 971, 193, 213, 222, 246, 272, 286, 298, 309, 315, 510, 512, 522, 531, 571, 577, 591, 608, 621, 684, 728, 763]
[INFO] [stdout] b all: {48, 52, 64, 128, 131, 141, 147, 157, 163, 193, 213, 222, 246, 272, 286, 298, 309, 315, 360, 423, 463, 473, 476, 488, 489, 506, 510, 512, 522, 531, 571, 577, 591, 608, 621, 648, 650, 656, 678, 684, 728, 763, 792, 800, 863, 871, 875, 886, 899, 962, 971} + [80, 85, 142, 159, 160, 169, 317, 357, 434, 480, 497, 635, 641, 802, 840, 883, 888, 27, 54, 74, 654, 674, 675, 957, 965, 969, 978, 984, 997, 184, 212, 248, 570, 582, 595, 681, 683, 704]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [27, 48, 52, 54, 64, 74, 80, 85, 128, 131, 141, 142, 147, 157, 159, 160, 163, 169, 184, 193, 212, 213, 222, 246, 248, 272, 286, 298, 309, 315, 317, 357, 360, 423, 434, 463, 473, 476, 480, 488, 489, 497, 506, 510, 512, 522, 531, 570, 571, 577, 582, 591, 595, 608, 621, 635, 641, 648, 650, 654, 656, 674, 675, 678, 681, 683, 684, 704, 728, 763, 792, 800, 802, 840, 863, 871, 875, 883, 886, 888, 899, 957, 962, 965, 969, 971, 978, 984, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [27, 48, 52, 54, 64, 74, 80, 85, 128, 131, 141, 142, 147, 157, 159, 160, 163, 169, 184, 193, 212, 213, 222, 246, 248, 272, 286, 298, 309, 315, 317, 357, 360, 423, 434, 463, 473, 476, 480, 488, 489, 497, 506, 510, 512, 522, 531, 570, 571, 577, 582, 591, 595, 608, 621, 635, 641, 648, 650, 654, 656, 674, 675, 678, 681, 683, 684, 704, 728, 763, 792, 800, 802, 840, 863, 871, 875, 883, 886, 888, 899, 957, 962, 965, 969, 971, 978, 984, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [27, 48, 52, 54, 64, 74, 80, 85, 128, 131, 141, 142, 147, 157, 159, 160, 163, 169, 184, 193, 212, 213, 222, 246, 248, 272, 286, 298, 309, 315, 317, 357, 360, 423, 434, 463, 473, 476, 480, 488, 489, 497, 506, 510, 512, 522, 531, 570, 571, 577, 582, 591, 595, 608, 621, 635, 641, 648, 650, 654, 656, 674, 675, 678, 681, 683, 684, 704, 728, 763, 792, 800, 802, 840, 863, 871, 875, 883, 886, 888, 899, 957, 962, 965, 969, 971, 978, 984, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 68, 74, 80, 81, 101, 120, 121, 122, 125, 130, 141, 148, 163, 181, 197, 201, 202, 228, 229, 240, 241, 275, 277, 278, 294, 301, 316, 321, 344, 349, 351, 353, 356, 358, 363, 374, 378, 413, 425, 426, 427, 465, 484, 506, 517, 540, 549, 559, 568, 571, 581, 585, 614, 624, 630, 650, 651, 677, 680, 707, 717, 721, 732, 758, 763, 810, 812, 814, 824, 834, 837, 839, 845, 848, 867, 875, 877, 890, 893, 898, 906, 951, 965, 966, 971, 994}
[INFO] [stdout] b items: {18, 38, 50, 63, 95, 99, 103, 110, 116, 124, 127, 130, 145, 165, 169, 190, 229, 235, 249, 289, 296, 332, 334, 366, 370, 397, 419, 429, 432, 450, 483, 491, 502, 504, 517, 541, 573, 600, 604, 612, 615, 622, 674, 680, 697, 709, 717, 719, 720, 722, 812, 815, 817, 825, 835, 842, 857, 869, 880, 882, 883, 885, 901, 902, 941, 957, 971, 998}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 995), fp: EncodedCountingMonoid(87, SumMonoid(43541)) }], item_sets: [ItemSet { range: Range(995, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 517), fp: EncodedCountingMonoid(34, SumMonoid(8549)) }, Fingerprint { range: Range(517, 995), fp: EncodedCountingMonoid(33, SumMonoid(25196)) }], item_sets: [ItemSet { range: Range(995, 4), items: [998], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 277), fp: EncodedCountingMonoid(23, SumMonoid(3472)) }, Fingerprint { range: Range(277, 517), fp: EncodedCountingMonoid(22, SumMonoid(8159)) }, Fingerprint { range: Range(517, 810), fp: EncodedCountingMonoid(21, SumMonoid(13394)) }, Fingerprint { range: Range(810, 995), fp: EncodedCountingMonoid(21, SumMonoid(18516)) }], item_sets: [], wants: [998], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 127), fp: EncodedCountingMonoid(10, SumMonoid(816)) }, Fingerprint { range: Range(127, 277), fp: EncodedCountingMonoid(9, SumMonoid(1639)) }, Fingerprint { range: Range(277, 429), fp: EncodedCountingMonoid(8, SumMonoid(2803)) }, Fingerprint { range: Range(429, 517), fp: EncodedCountingMonoid(7, SumMonoid(3291)) }, Fingerprint { range: Range(517, 674), fp: EncodedCountingMonoid(8, SumMonoid(4684)) }, Fingerprint { range: Range(674, 810), fp: EncodedCountingMonoid(8, SumMonoid(5638)) }, Fingerprint { range: Range(810, 882), fp: EncodedCountingMonoid(9, SumMonoid(7552)) }, Fingerprint { range: Range(882, 995), fp: EncodedCountingMonoid(8, SumMonoid(7322)) }], item_sets: [], wants: [], provide: [(998, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 101), fp: EncodedCountingMonoid(5, SumMonoid(307)) }, Fingerprint { range: Range(101, 127), fp: EncodedCountingMonoid(5, SumMonoid(589)) }, Fingerprint { range: Range(127, 202), fp: EncodedCountingMonoid(7, SumMonoid(1161)) }, Fingerprint { range: Range(202, 277), fp: EncodedCountingMonoid(6, SumMonoid(1415)) }, Fingerprint { range: Range(277, 356), fp: EncodedCountingMonoid(10, SumMonoid(3184)) }, Fingerprint { range: Range(356, 429), fp: EncodedCountingMonoid(9, SumMonoid(3520)) }, Fingerprint { range: Range(517, 585), fp: EncodedCountingMonoid(7, SumMonoid(3885)) }, Fingerprint { range: Range(585, 674), fp: EncodedCountingMonoid(6, SumMonoid(3754)) }, Fingerprint { range: Range(674, 721), fp: EncodedCountingMonoid(4, SumMonoid(2781)) }, Fingerprint { range: Range(721, 810), fp: EncodedCountingMonoid(4, SumMonoid(2974)) }, Fingerprint { range: Range(810, 839), fp: EncodedCountingMonoid(6, SumMonoid(4931)) }, Fingerprint { range: Range(839, 882), fp: EncodedCountingMonoid(6, SumMonoid(5151)) }, Fingerprint { range: Range(882, 965), fp: EncodedCountingMonoid(5, SumMonoid(4538)) }, Fingerprint { range: Range(965, 995), fp: EncodedCountingMonoid(4, SumMonoid(3896)) }], item_sets: [ItemSet { range: Range(429, 506), items: [465, 484], want_response: true }, ItemSet { range: Range(506, 517), items: [506], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 63), fp: EncodedCountingMonoid(3, SumMonoid(106)) }, Fingerprint { range: Range(63, 101), fp: EncodedCountingMonoid(3, SumMonoid(257)) }, Fingerprint { range: Range(127, 165), fp: EncodedCountingMonoid(3, SumMonoid(402)) }, Fingerprint { range: Range(165, 202), fp: EncodedCountingMonoid(3, SumMonoid(524)) }, Fingerprint { range: Range(585, 615), fp: EncodedCountingMonoid(3, SumMonoid(1816)) }, Fingerprint { range: Range(674, 717), fp: EncodedCountingMonoid(4, SumMonoid(2760)) }, Fingerprint { range: Range(717, 721), fp: EncodedCountingMonoid(3, SumMonoid(2156)) }, Fingerprint { range: Range(810, 825), fp: EncodedCountingMonoid(3, SumMonoid(2444)) }, Fingerprint { range: Range(882, 902), fp: EncodedCountingMonoid(4, SumMonoid(3551)) }, Fingerprint { range: Range(902, 965), fp: EncodedCountingMonoid(3, SumMonoid(2800)) }], item_sets: [ItemSet { range: Range(429, 506), items: [429, 432, 450, 483, 491, 502, 504], want_response: false }, ItemSet { range: Range(506, 517), items: [], want_response: false }, ItemSet { range: Range(101, 116), items: [103, 110], want_response: true }, ItemSet { range: Range(116, 127), items: [116, 124], want_response: true }, ItemSet { range: Range(202, 249), items: [229, 235], want_response: true }, ItemSet { range: Range(249, 277), items: [249], want_response: true }, ItemSet { range: Range(277, 332), items: [289, 296], want_response: true }, ItemSet { range: Range(332, 356), items: [332, 334], want_response: true }, ItemSet { range: Range(356, 397), items: [366, 370], want_response: true }, ItemSet { range: Range(397, 429), items: [397, 419], want_response: true }, ItemSet { range: Range(517, 573), items: [517, 541], want_response: true }, ItemSet { range: Range(573, 585), items: [573], want_response: true }, ItemSet { range: Range(615, 674), items: [615, 622], want_response: true }, ItemSet { range: Range(721, 810), items: [722], want_response: true }, ItemSet { range: Range(825, 839), items: [825, 835], want_response: true }, ItemSet { range: Range(839, 869), items: [842, 857], want_response: true }, ItemSet { range: Range(869, 882), items: [869, 880], want_response: true }, ItemSet { range: Range(965, 995), items: [971], want_response: true }], wants: [465, 484, 506], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(101, 116), items: [101], want_response: false }, ItemSet { range: Range(116, 127), items: [120, 121, 122, 125], want_response: false }, ItemSet { range: Range(202, 249), items: [202, 228, 229, 240, 241], want_response: false }, ItemSet { range: Range(249, 277), items: [275], want_response: false }, ItemSet { range: Range(277, 332), items: [277, 278, 294, 301, 316, 321], want_response: false }, ItemSet { range: Range(332, 356), items: [344, 349, 351, 353], want_response: false }, ItemSet { range: Range(356, 397), items: [356, 358, 363, 374, 378], want_response: false }, ItemSet { range: Range(397, 429), items: [413, 425, 426, 427], want_response: false }, ItemSet { range: Range(517, 573), items: [517, 540, 549, 559, 568, 571], want_response: false }, ItemSet { range: Range(573, 585), items: [581], want_response: false }, ItemSet { range: Range(615, 674), items: [624, 630, 650, 651], want_response: false }, ItemSet { range: Range(721, 810), items: [721, 732, 758, 763], want_response: false }, ItemSet { range: Range(825, 839), items: [834, 837], want_response: false }, ItemSet { range: Range(839, 869), items: [839, 845, 848, 867], want_response: false }, ItemSet { range: Range(869, 882), items: [875, 877], want_response: false }, ItemSet { range: Range(965, 995), items: [965, 966, 971, 994], want_response: false }, ItemSet { range: Range(4, 63), items: [4], want_response: true }, ItemSet { range: Range(63, 80), items: [68, 74], want_response: true }, ItemSet { range: Range(80, 101), items: [80, 81], want_response: true }, ItemSet { range: Range(127, 148), items: [130, 141], want_response: true }, ItemSet { range: Range(148, 165), items: [148, 163], want_response: true }, ItemSet { range: Range(165, 201), items: [181, 197], want_response: true }, ItemSet { range: Range(201, 202), items: [201], want_response: true }, ItemSet { range: Range(585, 615), items: [585, 614], want_response: true }, ItemSet { range: Range(674, 707), items: [677, 680], want_response: true }, ItemSet { range: Range(707, 717), items: [707], want_response: true }, ItemSet { range: Range(717, 721), items: [717], want_response: true }, ItemSet { range: Range(810, 814), items: [810, 812], want_response: true }, ItemSet { range: Range(814, 825), items: [814, 824], want_response: true }, ItemSet { range: Range(882, 898), items: [890, 893], want_response: true }, ItemSet { range: Range(898, 902), items: [898], want_response: true }, ItemSet { range: Range(902, 965), items: [906, 951], want_response: true }], wants: [429, 432, 450, 483, 491, 502, 504, 103, 110, 116, 124, 235, 249, 289, 296, 332, 334, 366, 370, 397, 419, 541, 573, 615, 622, 722, 825, 835, 842, 857, 869, 880], provide: [(465, true), (484, true), (506, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 63), items: [18, 38, 50], want_response: false }, ItemSet { range: Range(63, 80), items: [63], want_response: false }, ItemSet { range: Range(80, 101), items: [95, 99], want_response: false }, ItemSet { range: Range(127, 148), items: [127, 130, 145], want_response: false }, ItemSet { range: Range(148, 165), items: [], want_response: false }, ItemSet { range: Range(165, 201), items: [165, 169, 190], want_response: false }, ItemSet { range: Range(201, 202), items: [], want_response: false }, ItemSet { range: Range(585, 615), items: [600, 604, 612], want_response: false }, ItemSet { range: Range(674, 707), items: [674, 680, 697], want_response: false }, ItemSet { range: Range(707, 717), items: [709], want_response: false }, ItemSet { range: Range(717, 721), items: [717, 719, 720], want_response: false }, ItemSet { range: Range(810, 814), items: [812], want_response: false }, ItemSet { range: Range(814, 825), items: [815, 817], want_response: false }, ItemSet { range: Range(882, 898), items: [882, 883, 885], want_response: false }, ItemSet { range: Range(898, 902), items: [901], want_response: false }, ItemSet { range: Range(902, 965), items: [902, 941, 957], want_response: false }], wants: [101, 120, 121, 122, 125, 202, 228, 240, 241, 275, 277, 278, 294, 301, 316, 321, 344, 349, 351, 353, 356, 358, 363, 374, 378, 413, 425, 426, 427, 540, 549, 559, 568, 571, 581, 624, 630, 650, 651, 721, 732, 758, 763, 834, 837, 839, 845, 848, 867, 875, 877, 965, 966, 994, 4, 68, 74, 80, 81, 141, 148, 163, 181, 197, 201, 585, 614, 677, 707, 810, 814, 824, 890, 893, 898, 906, 951], provide: [(429, true), (432, true), (450, true), (483, true), (491, true), (502, true), (504, true), (103, true), (110, true), (116, true), (124, true), (235, true), (249, true), (289, true), (296, true), (332, true), (334, true), (366, true), (370, true), (397, true), (419, true), (541, true), (573, true), (615, true), (622, true), (722, true), (825, true), (835, true), (842, true), (857, true), (869, true), (880, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 38, 50, 63, 95, 99, 127, 145, 165, 169, 190, 600, 604, 612, 674, 697, 709, 719, 720, 815, 817, 882, 883, 885, 901, 902, 941, 957], provide: [(101, true), (120, true), (121, true), (122, true), (125, true), (202, true), (228, true), (240, true), (241, true), (275, true), (277, true), (278, true), (294, true), (301, true), (316, true), (321, true), (344, true), (349, true), (351, true), (353, true), (356, true), (358, true), (363, true), (374, true), (378, true), (413, true), (425, true), (426, true), (427, true), (540, true), (549, true), (559, true), (568, true), (571, true), (581, true), (624, true), (630, true), (650, true), (651, true), (721, true), (732, true), (758, true), (763, true), (834, true), (837, true), (839, true), (845, true), (848, true), (867, true), (875, true), (877, true), (965, true), (966, true), (994, true), (4, true), (68, true), (74, true), (80, true), (81, true), (141, true), (148, true), (163, true), (181, true), (197, true), (201, true), (585, true), (614, true), (677, true), (707, true), (810, true), (814, true), (824, true), (890, true), (893, true), (898, true), (906, true), (951, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (38, true), (50, true), (63, true), (95, true), (99, true), (127, true), (145, true), (165, true), (169, true), (190, true), (600, true), (604, true), (612, true), (674, true), (697, true), (709, true), (719, true), (720, true), (815, true), (817, true), (882, true), (883, true), (885, true), (901, true), (902, true), (941, true), (957, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 68, 74, 80, 81, 101, 120, 121, 122, 125, 130, 141, 148, 163, 181, 197, 201, 202, 228, 229, 240, 241, 275, 277, 278, 294, 301, 316, 321, 344, 349, 351, 353, 356, 358, 363, 374, 378, 413, 425, 426, 427, 465, 484, 506, 517, 540, 549, 559, 568, 571, 581, 585, 614, 624, 630, 650, 651, 677, 680, 707, 717, 721, 732, 758, 763, 810, 812, 814, 824, 834, 837, 839, 845, 848, 867, 875, 877, 890, 893, 898, 906, 951, 965, 966, 971, 994} + [998, 429, 432, 450, 483, 491, 502, 504, 103, 110, 116, 124, 235, 249, 289, 296, 332, 334, 366, 370, 397, 419, 541, 573, 615, 622, 722, 825, 835, 842, 857, 869, 880, 18, 38, 50, 63, 95, 99, 127, 145, 165, 169, 190, 600, 604, 612, 674, 697, 709, 719, 720, 815, 817, 882, 883, 885, 901, 902, 941, 957]
[INFO] [stdout] b all: {18, 38, 50, 63, 95, 99, 103, 110, 116, 124, 127, 130, 145, 165, 169, 190, 229, 235, 249, 289, 296, 332, 334, 366, 370, 397, 419, 429, 432, 450, 483, 491, 502, 504, 517, 541, 573, 600, 604, 612, 615, 622, 674, 680, 697, 709, 717, 719, 720, 722, 812, 815, 817, 825, 835, 842, 857, 869, 880, 882, 883, 885, 901, 902, 941, 957, 971, 998} + [465, 484, 506, 101, 120, 121, 122, 125, 202, 228, 240, 241, 275, 277, 278, 294, 301, 316, 321, 344, 349, 351, 353, 356, 358, 363, 374, 378, 413, 425, 426, 427, 540, 549, 559, 568, 571, 581, 624, 630, 650, 651, 721, 732, 758, 763, 834, 837, 839, 845, 848, 867, 875, 877, 965, 966, 994, 4, 68, 74, 80, 81, 141, 148, 163, 181, 197, 201, 585, 614, 677, 707, 810, 814, 824, 890, 893, 898, 906, 951]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 18, 38, 50, 63, 68, 74, 80, 81, 95, 99, 101, 103, 110, 116, 120, 121, 122, 124, 125, 127, 130, 141, 145, 148, 163, 165, 169, 181, 190, 197, 201, 202, 228, 229, 235, 240, 241, 249, 275, 277, 278, 289, 294, 296, 301, 316, 321, 332, 334, 344, 349, 351, 353, 356, 358, 363, 366, 370, 374, 378, 397, 413, 419, 425, 426, 427, 429, 432, 450, 465, 483, 484, 491, 502, 504, 506, 517, 540, 541, 549, 559, 568, 571, 573, 581, 585, 600, 604, 612, 614, 615, 622, 624, 630, 650, 651, 674, 677, 680, 697, 707, 709, 717, 719, 720, 721, 722, 732, 758, 763, 810, 812, 814, 815, 817, 824, 825, 834, 835, 837, 839, 842, 845, 848, 857, 867, 869, 875, 877, 880, 882, 883, 885, 890, 893, 898, 901, 902, 906, 941, 951, 957, 965, 966, 971, 994, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 18, 38, 50, 63, 68, 74, 80, 81, 95, 99, 101, 103, 110, 116, 120, 121, 122, 124, 125, 127, 130, 141, 145, 148, 163, 165, 169, 181, 190, 197, 201, 202, 228, 229, 235, 240, 241, 249, 275, 277, 278, 289, 294, 296, 301, 316, 321, 332, 334, 344, 349, 351, 353, 356, 358, 363, 366, 370, 374, 378, 397, 413, 419, 425, 426, 427, 429, 432, 450, 465, 483, 484, 491, 502, 504, 506, 517, 540, 541, 549, 559, 568, 571, 573, 581, 585, 600, 604, 612, 614, 615, 622, 624, 630, 650, 651, 674, 677, 680, 697, 707, 709, 717, 719, 720, 721, 722, 732, 758, 763, 810, 812, 814, 815, 817, 824, 825, 834, 835, 837, 839, 842, 845, 848, 857, 867, 869, 875, 877, 880, 882, 883, 885, 890, 893, 898, 901, 902, 906, 941, 951, 957, 965, 966, 971, 994, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 18, 38, 50, 63, 68, 74, 80, 81, 95, 99, 101, 103, 110, 116, 120, 121, 122, 124, 125, 127, 130, 141, 145, 148, 163, 165, 169, 181, 190, 197, 201, 202, 228, 229, 235, 240, 241, 249, 275, 277, 278, 289, 294, 296, 301, 316, 321, 332, 334, 344, 349, 351, 353, 356, 358, 363, 366, 370, 374, 378, 397, 413, 419, 425, 426, 427, 429, 432, 450, 465, 483, 484, 491, 502, 504, 506, 517, 540, 541, 549, 559, 568, 571, 573, 581, 585, 600, 604, 612, 614, 615, 622, 624, 630, 650, 651, 674, 677, 680, 697, 707, 709, 717, 719, 720, 721, 722, 732, 758, 763, 810, 812, 814, 815, 817, 824, 825, 834, 835, 837, 839, 842, 845, 848, 857, 867, 869, 875, 877, 880, 882, 883, 885, 890, 893, 898, 901, 902, 906, 941, 951, 957, 965, 966, 971, 994, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {13, 94, 289, 308, 322, 360, 406, 572, 605, 608, 740, 750, 819, 839, 940}
[INFO] [stdout] b items: {14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 153, 154, 155, 162, 167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 294, 304, 309, 310, 313, 315, 319, 323, 356, 381, 382, 389, 401, 408, 421, 445, 453, 454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 578, 579, 580, 581, 587, 590, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731, 754, 781, 793, 802, 809, 820, 825, 830, 891, 917, 921, 929, 934, 935, 946, 949, 956, 977, 987, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 941), fp: EncodedCountingMonoid(15, SumMonoid(7665)) }], item_sets: [ItemSet { range: Range(941, 13), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 454), fp: EncodedCountingMonoid(44, SumMonoid(9755)) }, Fingerprint { range: Range(454, 941), fp: EncodedCountingMonoid(43, SumMonoid(29149)) }], item_sets: [ItemSet { range: Range(941, 13), items: [946, 949, 956, 977, 987, 990], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 322), fp: EncodedCountingMonoid(4, SumMonoid(704)) }, Fingerprint { range: Range(322, 454), fp: EncodedCountingMonoid(3, SumMonoid(1088)) }, Fingerprint { range: Range(454, 750), fp: EncodedCountingMonoid(4, SumMonoid(2525)) }, Fingerprint { range: Range(750, 941), fp: EncodedCountingMonoid(4, SumMonoid(3348)) }], item_sets: [], wants: [946, 949, 956, 977, 987, 990], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 167), fp: EncodedCountingMonoid(17, SumMonoid(1305)) }, Fingerprint { range: Range(167, 322), fp: EncodedCountingMonoid(17, SumMonoid(4491)) }, Fingerprint { range: Range(322, 401), fp: EncodedCountingMonoid(5, SumMonoid(1831)) }, Fingerprint { range: Range(401, 454), fp: EncodedCountingMonoid(5, SumMonoid(2128)) }, Fingerprint { range: Range(454, 590), fp: EncodedCountingMonoid(15, SumMonoid(7984)) }, Fingerprint { range: Range(590, 750), fp: EncodedCountingMonoid(14, SumMonoid(9224)) }, Fingerprint { range: Range(750, 830), fp: EncodedCountingMonoid(7, SumMonoid(5584)) }, Fingerprint { range: Range(830, 941), fp: EncodedCountingMonoid(7, SumMonoid(6357)) }], item_sets: [], wants: [], provide: [(946, true), (949, true), (956, true), (977, true), (987, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(13, 167), items: [13, 94], want_response: true }, ItemSet { range: Range(167, 322), items: [289, 308], want_response: true }, ItemSet { range: Range(322, 401), items: [322, 360], want_response: true }, ItemSet { range: Range(401, 454), items: [406], want_response: true }, ItemSet { range: Range(454, 590), items: [572], want_response: true }, ItemSet { range: Range(590, 740), items: [605, 608], want_response: true }, ItemSet { range: Range(740, 750), items: [740], want_response: true }, ItemSet { range: Range(750, 830), items: [750, 819], want_response: true }, ItemSet { range: Range(830, 941), items: [839, 940], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(13, 167), items: [14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 153, 154, 155, 162], want_response: false }, ItemSet { range: Range(167, 322), items: [167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 294, 304, 309, 310, 313, 315, 319], want_response: false }, ItemSet { range: Range(322, 401), items: [323, 356, 381, 382, 389], want_response: false }, ItemSet { range: Range(401, 454), items: [401, 408, 421, 445, 453], want_response: false }, ItemSet { range: Range(454, 590), items: [454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 578, 579, 580, 581, 587], want_response: false }, ItemSet { range: Range(590, 740), items: [590, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731], want_response: false }, ItemSet { range: Range(740, 750), items: [], want_response: false }, ItemSet { range: Range(750, 830), items: [754, 781, 793, 802, 809, 820, 825], want_response: false }, ItemSet { range: Range(830, 941), items: [830, 891, 917, 921, 929, 934, 935], want_response: false }], wants: [13, 94, 289, 308, 322, 360, 406, 572, 605, 608, 740, 750, 819, 839, 940], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 153, 154, 155, 162, 167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 294, 304, 309, 310, 313, 315, 319, 323, 356, 381, 382, 389, 401, 408, 421, 445, 453, 454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 578, 579, 580, 581, 587, 590, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731, 754, 781, 793, 802, 809, 820, 825, 830, 891, 917, 921, 929, 934, 935], provide: [(13, true), (94, true), (289, true), (308, true), (322, true), (360, true), (406, true), (572, true), (605, true), (608, true), (740, true), (750, true), (819, true), (839, true), (940, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(14, true), (19, true), (20, true), (25, true), (47, true), (48, true), (54, true), (56, true), (69, true), (74, true), (80, true), (84, true), (91, true), (153, true), (154, true), (155, true), (162, true), (167, true), (180, true), (184, true), (230, true), (233, true), (239, true), (259, true), (266, true), (284, true), (285, true), (294, true), (304, true), (309, true), (310, true), (313, true), (315, true), (319, true), (323, true), (356, true), (381, true), (382, true), (389, true), (401, true), (408, true), (421, true), (445, true), (453, true), (454, true), (462, true), (472, true), (481, true), (482, true), (517, true), (534, true), (542, true), (564, true), (571, true), (578, true), (579, true), (580, true), (581, true), (587, true), (590, true), (616, true), (617, true), (618, true), (623, true), (648, true), (652, true), (666, true), (675, true), (685, true), (687, true), (701, true), (715, true), (731, true), (754, true), (781, true), (793, true), (802, true), (809, true), (820, true), (825, true), (830, true), (891, true), (917, true), (921, true), (929, true), (934, true), (935, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {13, 94, 289, 308, 322, 360, 406, 572, 605, 608, 740, 750, 819, 839, 940} + [946, 949, 956, 977, 987, 990, 14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 153, 154, 155, 162, 167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 294, 304, 309, 310, 313, 315, 319, 323, 356, 381, 382, 389, 401, 408, 421, 445, 453, 454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 578, 579, 580, 581, 587, 590, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731, 754, 781, 793, 802, 809, 820, 825, 830, 891, 917, 921, 929, 934, 935]
[INFO] [stdout] b all: {14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 153, 154, 155, 162, 167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 294, 304, 309, 310, 313, 315, 319, 323, 356, 381, 382, 389, 401, 408, 421, 445, 453, 454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 578, 579, 580, 581, 587, 590, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731, 754, 781, 793, 802, 809, 820, 825, 830, 891, 917, 921, 929, 934, 935, 946, 949, 956, 977, 987, 990} + [13, 94, 289, 308, 322, 360, 406, 572, 605, 608, 740, 750, 819, 839, 940]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 94, 153, 154, 155, 162, 167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 289, 294, 304, 308, 309, 310, 313, 315, 319, 322, 323, 356, 360, 381, 382, 389, 401, 406, 408, 421, 445, 453, 454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 572, 578, 579, 580, 581, 587, 590, 605, 608, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731, 740, 750, 754, 781, 793, 802, 809, 819, 820, 825, 830, 839, 891, 917, 921, 929, 934, 935, 940, 946, 949, 956, 977, 987, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 94, 153, 154, 155, 162, 167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 289, 294, 304, 308, 309, 310, 313, 315, 319, 322, 323, 356, 360, 381, 382, 389, 401, 406, 408, 421, 445, 453, 454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 572, 578, 579, 580, 581, 587, 590, 605, 608, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731, 740, 750, 754, 781, 793, 802, 809, 819, 820, 825, 830, 839, 891, 917, 921, 929, 934, 935, 940, 946, 949, 956, 977, 987, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 14, 19, 20, 25, 47, 48, 54, 56, 69, 74, 80, 84, 91, 94, 153, 154, 155, 162, 167, 180, 184, 230, 233, 239, 259, 266, 284, 285, 289, 294, 304, 308, 309, 310, 313, 315, 319, 322, 323, 356, 360, 381, 382, 389, 401, 406, 408, 421, 445, 453, 454, 462, 472, 481, 482, 517, 534, 542, 564, 571, 572, 578, 579, 580, 581, 587, 590, 605, 608, 616, 617, 618, 623, 648, 652, 666, 675, 685, 687, 701, 715, 731, 740, 750, 754, 781, 793, 802, 809, 819, 820, 825, 830, 839, 891, 917, 921, 929, 934, 935, 940, 946, 949, 956, 977, 987, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {16, 19, 29, 58, 66, 190, 194, 214, 215, 236, 257, 265, 266, 276, 299, 330, 341, 397, 399, 436, 464, 484, 492, 504, 510, 513, 522, 525, 532, 544, 590, 610, 611, 613, 619, 621, 628, 637, 639, 640, 677, 685, 711, 720, 755, 760, 762, 867, 902, 904, 936, 967, 976, 983, 986}
[INFO] [stdout] b items: {39, 64, 95, 99, 100, 123, 124, 152, 180, 187, 195, 204, 260, 263, 388, 403, 414, 471, 492, 584, 701, 719, 738, 740, 789, 816, 820, 831, 862, 885, 896, 918, 952, 982}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 987), fp: EncodedCountingMonoid(55, SumMonoid(28392)) }], item_sets: [ItemSet { range: Range(987, 16), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(16, 471), fp: EncodedCountingMonoid(17, SumMonoid(3290)) }, Fingerprint { range: Range(471, 987), fp: EncodedCountingMonoid(17, SumMonoid(13196)) }], item_sets: [ItemSet { range: Range(987, 16), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 265), fp: EncodedCountingMonoid(11, SumMonoid(1494)) }, Fingerprint { range: Range(265, 471), fp: EncodedCountingMonoid(10, SumMonoid(3473)) }, Fingerprint { range: Range(471, 639), fp: EncodedCountingMonoid(17, SumMonoid(9555)) }, Fingerprint { range: Range(639, 987), fp: EncodedCountingMonoid(17, SumMonoid(13870)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(16, 152), fp: EncodedCountingMonoid(7, SumMonoid(644)) }, Fingerprint { range: Range(152, 265), fp: EncodedCountingMonoid(7, SumMonoid(1441)) }, Fingerprint { range: Range(639, 831), fp: EncodedCountingMonoid(7, SumMonoid(5323)) }, Fingerprint { range: Range(831, 987), fp: EncodedCountingMonoid(7, SumMonoid(6326)) }], item_sets: [ItemSet { range: Range(265, 414), items: [388, 403], want_response: true }, ItemSet { range: Range(414, 471), items: [414], want_response: true }, ItemSet { range: Range(471, 584), items: [471, 492], want_response: true }, ItemSet { range: Range(584, 639), items: [584], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 58), fp: EncodedCountingMonoid(3, SumMonoid(64)) }, Fingerprint { range: Range(152, 215), fp: EncodedCountingMonoid(3, SumMonoid(598)) }, Fingerprint { range: Range(215, 265), fp: EncodedCountingMonoid(3, SumMonoid(708)) }, Fingerprint { range: Range(639, 720), fp: EncodedCountingMonoid(5, SumMonoid(3352)) }, Fingerprint { range: Range(720, 831), fp: EncodedCountingMonoid(4, SumMonoid(2997)) }, Fingerprint { range: Range(831, 967), fp: EncodedCountingMonoid(4, SumMonoid(3609)) }, Fingerprint { range: Range(967, 987), fp: EncodedCountingMonoid(4, SumMonoid(3912)) }], item_sets: [ItemSet { range: Range(265, 414), items: [265, 266, 276, 299, 330, 341, 397, 399], want_response: false }, ItemSet { range: Range(414, 471), items: [436, 464], want_response: false }, ItemSet { range: Range(471, 584), items: [484, 492, 504, 510, 513, 522, 525, 532, 544], want_response: false }, ItemSet { range: Range(584, 639), items: [590, 610, 611, 613, 619, 621, 628, 637], want_response: false }, ItemSet { range: Range(58, 152), items: [58, 66], want_response: true }], wants: [388, 403, 414, 471, 584], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(152, 195), fp: EncodedCountingMonoid(3, SumMonoid(519)) }, Fingerprint { range: Range(720, 816), fp: EncodedCountingMonoid(3, SumMonoid(2267)) }, Fingerprint { range: Range(831, 896), fp: EncodedCountingMonoid(3, SumMonoid(2578)) }, Fingerprint { range: Range(896, 967), fp: EncodedCountingMonoid(3, SumMonoid(2766)) }], item_sets: [ItemSet { range: Range(58, 152), items: [64, 95, 99, 100, 123, 124], want_response: false }, ItemSet { range: Range(16, 58), items: [39], want_response: true }, ItemSet { range: Range(195, 215), items: [195, 204], want_response: true }, ItemSet { range: Range(215, 265), items: [260, 263], want_response: true }, ItemSet { range: Range(639, 720), items: [701, 719], want_response: true }, ItemSet { range: Range(816, 831), items: [816, 820], want_response: true }, ItemSet { range: Range(967, 987), items: [982], want_response: true }], wants: [265, 266, 276, 299, 330, 341, 397, 399, 436, 464, 484, 504, 510, 513, 522, 525, 532, 544, 590, 610, 611, 613, 619, 621, 628, 637, 58, 66], provide: [(388, true), (403, true), (414, true), (471, true), (584, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(16, 58), items: [16, 19, 29], want_response: false }, ItemSet { range: Range(195, 215), items: [214], want_response: false }, ItemSet { range: Range(215, 265), items: [215, 236, 257], want_response: false }, ItemSet { range: Range(639, 720), items: [639, 640, 677, 685, 711], want_response: false }, ItemSet { range: Range(816, 831), items: [], want_response: false }, ItemSet { range: Range(967, 987), items: [967, 976, 983, 986], want_response: false }, ItemSet { range: Range(152, 195), items: [190, 194], want_response: true }, ItemSet { range: Range(720, 760), items: [720, 755], want_response: true }, ItemSet { range: Range(760, 816), items: [760, 762], want_response: true }, ItemSet { range: Range(831, 896), items: [867], want_response: true }, ItemSet { range: Range(896, 936), items: [902, 904], want_response: true }, ItemSet { range: Range(936, 967), items: [936], want_response: true }], wants: [64, 95, 99, 100, 123, 124, 39, 195, 204, 260, 263, 701, 719, 816, 820, 982], provide: [(265, true), (266, true), (276, true), (299, true), (330, true), (341, true), (397, true), (399, true), (436, true), (464, true), (484, true), (504, true), (510, true), (513, true), (522, true), (525, true), (532, true), (544, true), (590, true), (610, true), (611, true), (613, true), (619, true), (621, true), (628, true), (637, true), (58, true), (66, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(152, 195), items: [152, 180, 187], want_response: false }, ItemSet { range: Range(720, 760), items: [738, 740], want_response: false }, ItemSet { range: Range(760, 816), items: [789], want_response: false }, ItemSet { range: Range(831, 896), items: [831, 862, 885], want_response: false }, ItemSet { range: Range(896, 936), items: [896, 918], want_response: false }, ItemSet { range: Range(936, 967), items: [952], want_response: false }], wants: [16, 19, 29, 214, 215, 236, 257, 639, 640, 677, 685, 711, 967, 976, 983, 986, 190, 194, 720, 755, 760, 762, 867, 902, 904, 936], provide: [(64, true), (95, true), (99, true), (100, true), (123, true), (124, true), (39, true), (195, true), (204, true), (260, true), (263, true), (701, true), (719, true), (816, true), (820, true), (982, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [152, 180, 187, 738, 740, 789, 831, 862, 885, 896, 918, 952], provide: [(16, true), (19, true), (29, true), (214, true), (215, true), (236, true), (257, true), (639, true), (640, true), (677, true), (685, true), (711, true), (967, true), (976, true), (983, true), (986, true), (190, true), (194, true), (720, true), (755, true), (760, true), (762, true), (867, true), (902, true), (904, true), (936, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(152, true), (180, true), (187, true), (738, true), (740, true), (789, true), (831, true), (862, true), (885, true), (896, true), (918, true), (952, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {16, 19, 29, 58, 66, 190, 194, 214, 215, 236, 257, 265, 266, 276, 299, 330, 341, 397, 399, 436, 464, 484, 492, 504, 510, 513, 522, 525, 532, 544, 590, 610, 611, 613, 619, 621, 628, 637, 639, 640, 677, 685, 711, 720, 755, 760, 762, 867, 902, 904, 936, 967, 976, 983, 986} + [388, 403, 414, 471, 584, 64, 95, 99, 100, 123, 124, 39, 195, 204, 260, 263, 701, 719, 816, 820, 982, 152, 180, 187, 738, 740, 789, 831, 862, 885, 896, 918, 952]
[INFO] [stdout] b all: {39, 64, 95, 99, 100, 123, 124, 152, 180, 187, 195, 204, 260, 263, 388, 403, 414, 471, 492, 584, 701, 719, 738, 740, 789, 816, 820, 831, 862, 885, 896, 918, 952, 982} + [265, 266, 276, 299, 330, 341, 397, 399, 436, 464, 484, 504, 510, 513, 522, 525, 532, 544, 590, 610, 611, 613, 619, 621, 628, 637, 58, 66, 16, 19, 29, 214, 215, 236, 257, 639, 640, 677, 685, 711, 967, 976, 983, 986, 190, 194, 720, 755, 760, 762, 867, 902, 904, 936]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [16, 19, 29, 39, 58, 64, 66, 95, 99, 100, 123, 124, 152, 180, 187, 190, 194, 195, 204, 214, 215, 236, 257, 260, 263, 265, 266, 276, 299, 330, 341, 388, 397, 399, 403, 414, 436, 464, 471, 484, 492, 504, 510, 513, 522, 525, 532, 544, 584, 590, 610, 611, 613, 619, 621, 628, 637, 639, 640, 677, 685, 701, 711, 719, 720, 738, 740, 755, 760, 762, 789, 816, 820, 831, 862, 867, 885, 896, 902, 904, 918, 936, 952, 967, 976, 982, 983, 986]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [16, 19, 29, 39, 58, 64, 66, 95, 99, 100, 123, 124, 152, 180, 187, 190, 194, 195, 204, 214, 215, 236, 257, 260, 263, 265, 266, 276, 299, 330, 341, 388, 397, 399, 403, 414, 436, 464, 471, 484, 492, 504, 510, 513, 522, 525, 532, 544, 584, 590, 610, 611, 613, 619, 621, 628, 637, 639, 640, 677, 685, 701, 711, 719, 720, 738, 740, 755, 760, 762, 789, 816, 820, 831, 862, 867, 885, 896, 902, 904, 918, 936, 952, 967, 976, 982, 983, 986], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [16, 19, 29, 39, 58, 64, 66, 95, 99, 100, 123, 124, 152, 180, 187, 190, 194, 195, 204, 214, 215, 236, 257, 260, 263, 265, 266, 276, 299, 330, 341, 388, 397, 399, 403, 414, 436, 464, 471, 484, 492, 504, 510, 513, 522, 525, 532, 544, 584, 590, 610, 611, 613, 619, 621, 628, 637, 639, 640, 677, 685, 701, 711, 719, 720, 738, 740, 755, 760, 762, 789, 816, 820, 831, 862, 867, 885, 896, 902, 904, 918, 936, 952, 967, 976, 982, 983, 986], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {44, 58, 59, 100, 149, 187, 237, 289, 340, 365, 397, 478, 487, 512, 533, 537, 559, 632, 643, 761, 886, 898, 989, 995}
[INFO] [stdout] b items: {3, 55, 89, 97, 129, 131, 132, 140, 142, 153, 163, 174, 198, 210, 215, 237, 271, 300, 322, 367, 373, 376, 426, 427, 468, 496, 505, 524, 538, 549, 577, 587, 618, 632, 643, 665, 668, 678, 682, 739, 748, 777, 781, 787, 837, 841, 855, 862, 881, 894, 929, 933}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(44, 996), fp: EncodedCountingMonoid(24, SumMonoid(11135)) }], item_sets: [ItemSet { range: Range(996, 44), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(44, 524), fp: EncodedCountingMonoid(26, SumMonoid(6596)) }, Fingerprint { range: Range(524, 996), fp: EncodedCountingMonoid(25, SumMonoid(18225)) }], item_sets: [ItemSet { range: Range(996, 44), items: [3], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(44, 289), fp: EncodedCountingMonoid(7, SumMonoid(834)) }, Fingerprint { range: Range(289, 524), fp: EncodedCountingMonoid(7, SumMonoid(2868)) }, Fingerprint { range: Range(524, 761), fp: EncodedCountingMonoid(5, SumMonoid(2904)) }, Fingerprint { range: Range(761, 996), fp: EncodedCountingMonoid(5, SumMonoid(4529)) }], item_sets: [], wants: [3], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(44, 153), fp: EncodedCountingMonoid(8, SumMonoid(915)) }, Fingerprint { range: Range(153, 289), fp: EncodedCountingMonoid(8, SumMonoid(1621)) }, Fingerprint { range: Range(289, 426), fp: EncodedCountingMonoid(5, SumMonoid(1738)) }, Fingerprint { range: Range(426, 524), fp: EncodedCountingMonoid(5, SumMonoid(2322)) }, Fingerprint { range: Range(524, 643), fp: EncodedCountingMonoid(7, SumMonoid(4025)) }, Fingerprint { range: Range(643, 761), fp: EncodedCountingMonoid(7, SumMonoid(4823)) }, Fingerprint { range: Range(761, 862), fp: EncodedCountingMonoid(6, SumMonoid(4878)) }, Fingerprint { range: Range(862, 996), fp: EncodedCountingMonoid(5, SumMonoid(4499)) }], item_sets: [], wants: [], provide: [(3, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(44, 100), fp: EncodedCountingMonoid(3, SumMonoid(161)) }], item_sets: [ItemSet { range: Range(100, 153), items: [100, 149], want_response: true }, ItemSet { range: Range(153, 289), items: [187, 237], want_response: true }, ItemSet { range: Range(289, 365), items: [289, 340], want_response: true }, ItemSet { range: Range(365, 426), items: [365, 397], want_response: true }, ItemSet { range: Range(426, 512), items: [478, 487], want_response: true }, ItemSet { range: Range(512, 524), items: [512], want_response: true }, ItemSet { range: Range(524, 559), items: [533, 537], want_response: true }, ItemSet { range: Range(559, 643), items: [559, 632], want_response: true }, ItemSet { range: Range(643, 761), items: [643], want_response: true }, ItemSet { range: Range(761, 862), items: [761], want_response: true }, ItemSet { range: Range(862, 989), items: [886, 898], want_response: true }, ItemSet { range: Range(989, 996), items: [989, 995], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(100, 153), items: [129, 131, 132, 140, 142], want_response: false }, ItemSet { range: Range(153, 289), items: [153, 163, 174, 198, 210, 215, 237, 271], want_response: false }, ItemSet { range: Range(289, 365), items: [300, 322], want_response: false }, ItemSet { range: Range(365, 426), items: [367, 373, 376], want_response: false }, ItemSet { range: Range(426, 512), items: [426, 427, 468, 496, 505], want_response: false }, ItemSet { range: Range(512, 524), items: [], want_response: false }, ItemSet { range: Range(524, 559), items: [524, 538, 549], want_response: false }, ItemSet { range: Range(559, 643), items: [577, 587, 618, 632], want_response: false }, ItemSet { range: Range(643, 761), items: [643, 665, 668, 678, 682, 739, 748], want_response: false }, ItemSet { range: Range(761, 862), items: [777, 781, 787, 837, 841, 855], want_response: false }, ItemSet { range: Range(862, 989), items: [862, 881, 894, 929, 933], want_response: false }, ItemSet { range: Range(989, 996), items: [], want_response: false }, ItemSet { range: Range(44, 97), items: [55, 89], want_response: true }, ItemSet { range: Range(97, 100), items: [97], want_response: true }], wants: [100, 149, 187, 289, 340, 365, 397, 478, 487, 512, 533, 537, 559, 761, 886, 898, 989, 995], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(44, 97), items: [44, 58, 59], want_response: false }, ItemSet { range: Range(97, 100), items: [], want_response: false }], wants: [129, 131, 132, 140, 142, 153, 163, 174, 198, 210, 215, 271, 300, 322, 367, 373, 376, 426, 427, 468, 496, 505, 524, 538, 549, 577, 587, 618, 665, 668, 678, 682, 739, 748, 777, 781, 787, 837, 841, 855, 862, 881, 894, 929, 933, 55, 89, 97], provide: [(100, true), (149, true), (187, true), (289, true), (340, true), (365, true), (397, true), (478, true), (487, true), (512, true), (533, true), (537, true), (559, true), (761, true), (886, true), (898, true), (989, true), (995, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [44, 58, 59], provide: [(129, true), (131, true), (132, true), (140, true), (142, true), (153, true), (163, true), (174, true), (198, true), (210, true), (215, true), (271, true), (300, true), (322, true), (367, true), (373, true), (376, true), (426, true), (427, true), (468, true), (496, true), (505, true), (524, true), (538, true), (549, true), (577, true), (587, true), (618, true), (665, true), (668, true), (678, true), (682, true), (739, true), (748, true), (777, true), (781, true), (787, true), (837, true), (841, true), (855, true), (862, true), (881, true), (894, true), (929, true), (933, true), (55, true), (89, true), (97, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(44, true), (58, true), (59, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {44, 58, 59, 100, 149, 187, 237, 289, 340, 365, 397, 478, 487, 512, 533, 537, 559, 632, 643, 761, 886, 898, 989, 995} + [3, 129, 131, 132, 140, 142, 153, 163, 174, 198, 210, 215, 271, 300, 322, 367, 373, 376, 426, 427, 468, 496, 505, 524, 538, 549, 577, 587, 618, 665, 668, 678, 682, 739, 748, 777, 781, 787, 837, 841, 855, 862, 881, 894, 929, 933, 55, 89, 97]
[INFO] [stdout] b all: {3, 55, 89, 97, 129, 131, 132, 140, 142, 153, 163, 174, 198, 210, 215, 237, 271, 300, 322, 367, 373, 376, 426, 427, 468, 496, 505, 524, 538, 549, 577, 587, 618, 632, 643, 665, 668, 678, 682, 739, 748, 777, 781, 787, 837, 841, 855, 862, 881, 894, 929, 933} + [100, 149, 187, 289, 340, 365, 397, 478, 487, 512, 533, 537, 559, 761, 886, 898, 989, 995, 44, 58, 59]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 44, 55, 58, 59, 89, 97, 100, 129, 131, 132, 140, 142, 149, 153, 163, 174, 187, 198, 210, 215, 237, 271, 289, 300, 322, 340, 365, 367, 373, 376, 397, 426, 427, 468, 478, 487, 496, 505, 512, 524, 533, 537, 538, 549, 559, 577, 587, 618, 632, 643, 665, 668, 678, 682, 739, 748, 761, 777, 781, 787, 837, 841, 855, 862, 881, 886, 894, 898, 929, 933, 989, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 44, 55, 58, 59, 89, 97, 100, 129, 131, 132, 140, 142, 149, 153, 163, 174, 187, 198, 210, 215, 237, 271, 289, 300, 322, 340, 365, 367, 373, 376, 397, 426, 427, 468, 478, 487, 496, 505, 512, 524, 533, 537, 538, 549, 559, 577, 587, 618, 632, 643, 665, 668, 678, 682, 739, 748, 761, 777, 781, 787, 837, 841, 855, 862, 881, 886, 894, 898, 929, 933, 989, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 44, 55, 58, 59, 89, 97, 100, 129, 131, 132, 140, 142, 149, 153, 163, 174, 187, 198, 210, 215, 237, 271, 289, 300, 322, 340, 365, 367, 373, 376, 397, 426, 427, 468, 478, 487, 496, 505, 512, 524, 533, 537, 538, 549, 559, 577, 587, 618, 632, 643, 665, 668, 678, 682, 739, 748, 761, 777, 781, 787, 837, 841, 855, 862, 881, 886, 894, 898, 929, 933, 989, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 74, 78, 82, 91, 94, 118, 138, 367, 429, 451, 461, 482, 518, 573, 604, 625, 822, 969}
[INFO] [stdout] b items: {5, 353, 637}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 970), fp: EncodedCountingMonoid(19, SumMonoid(6981)) }], item_sets: [ItemSet { range: Range(970, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(970, 5), items: [], want_response: false }, ItemSet { range: Range(5, 637), items: [5, 353], want_response: true }, ItemSet { range: Range(637, 970), items: [637], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 637), items: [5, 74, 78, 82, 91, 94, 118, 138, 367, 429, 451, 461, 482, 518, 573, 604, 625], want_response: false }, ItemSet { range: Range(637, 970), items: [822, 969], want_response: false }], wants: [353, 637], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [74, 78, 82, 91, 94, 118, 138, 367, 429, 451, 461, 482, 518, 573, 604, 625, 822, 969], provide: [(353, true), (637, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(74, true), (78, true), (82, true), (91, true), (94, true), (118, true), (138, true), (367, true), (429, true), (451, true), (461, true), (482, true), (518, true), (573, true), (604, true), (625, true), (822, true), (969, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 74, 78, 82, 91, 94, 118, 138, 367, 429, 451, 461, 482, 518, 573, 604, 625, 822, 969} + [353, 637]
[INFO] [stdout] b all: {5, 353, 637} + [74, 78, 82, 91, 94, 118, 138, 367, 429, 451, 461, 482, 518, 573, 604, 625, 822, 969]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 74, 78, 82, 91, 94, 118, 138, 353, 367, 429, 451, 461, 482, 518, 573, 604, 625, 637, 822, 969]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 74, 78, 82, 91, 94, 118, 138, 353, 367, 429, 451, 461, 482, 518, 573, 604, 625, 637, 822, 969], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 74, 78, 82, 91, 94, 118, 138, 353, 367, 429, 451, 461, 482, 518, 573, 604, 625, 637, 822, 969], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {48, 78, 83, 100, 108, 133, 155, 200, 202, 210, 243, 256, 263, 275, 276, 294, 315, 337, 344, 355, 385, 399, 407, 446, 468, 523, 571, 601, 623, 630, 698, 705, 711, 712, 715, 717, 723, 752, 760, 775, 788, 797, 813, 842, 862, 864, 866, 868, 875, 896, 909, 954, 964, 968, 972, 977, 987, 999}
[INFO] [stdout] b items: {23, 46, 94, 110, 181, 189, 274, 286, 308, 316, 326, 334, 339, 353, 392, 405, 419, 481, 546, 595, 597, 604, 613, 617, 618, 641, 655, 679, 683, 727, 736, 785, 797, 803, 845, 875, 926, 947, 977, 987}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(48, 1000), fp: EncodedCountingMonoid(58, SumMonoid(32797)) }], item_sets: [ItemSet { range: Range(1000, 48), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(48, 604), fp: EncodedCountingMonoid(19, SumMonoid(6545)) }, Fingerprint { range: Range(604, 1000), fp: EncodedCountingMonoid(19, SumMonoid(14515)) }], item_sets: [ItemSet { range: Range(1000, 48), items: [23, 46], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(48, 276), fp: EncodedCountingMonoid(14, SumMonoid(2354)) }, Fingerprint { range: Range(276, 604), fp: EncodedCountingMonoid(14, SumMonoid(5721)) }, Fingerprint { range: Range(604, 842), fp: EncodedCountingMonoid(15, SumMonoid(10919)) }, Fingerprint { range: Range(842, 1000), fp: EncodedCountingMonoid(15, SumMonoid(13803)) }], item_sets: [], wants: [23, 46], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(48, 189), fp: EncodedCountingMonoid(3, SumMonoid(385)) }, Fingerprint { range: Range(276, 392), fp: EncodedCountingMonoid(7, SumMonoid(2262)) }, Fingerprint { range: Range(392, 604), fp: EncodedCountingMonoid(7, SumMonoid(3435)) }, Fingerprint { range: Range(604, 683), fp: EncodedCountingMonoid(7, SumMonoid(4427)) }, Fingerprint { range: Range(683, 842), fp: EncodedCountingMonoid(6, SumMonoid(4531)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2646)) }, Fingerprint { range: Range(947, 1000), fp: EncodedCountingMonoid(3, SumMonoid(2911)) }], item_sets: [ItemSet { range: Range(189, 276), items: [189, 274], want_response: true }], wants: [], provide: [(23, true), (46, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(48, 108), fp: EncodedCountingMonoid(4, SumMonoid(309)) }, Fingerprint { range: Range(108, 189), fp: EncodedCountingMonoid(3, SumMonoid(396)) }, Fingerprint { range: Range(276, 344), fp: EncodedCountingMonoid(4, SumMonoid(1222)) }, Fingerprint { range: Range(344, 392), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(392, 523), fp: EncodedCountingMonoid(4, SumMonoid(1720)) }, Fingerprint { range: Range(523, 604), fp: EncodedCountingMonoid(3, SumMonoid(1695)) }, Fingerprint { range: Range(683, 752), fp: EncodedCountingMonoid(7, SumMonoid(4981)) }, Fingerprint { range: Range(752, 842), fp: EncodedCountingMonoid(6, SumMonoid(4685)) }, Fingerprint { range: Range(842, 868), fp: EncodedCountingMonoid(4, SumMonoid(3434)) }, Fingerprint { range: Range(868, 947), fp: EncodedCountingMonoid(4, SumMonoid(3548)) }, Fingerprint { range: Range(947, 977), fp: EncodedCountingMonoid(4, SumMonoid(3858)) }, Fingerprint { range: Range(977, 1000), fp: EncodedCountingMonoid(3, SumMonoid(2963)) }], item_sets: [ItemSet { range: Range(189, 276), items: [200, 202, 210, 243, 256, 263, 275], want_response: false }, ItemSet { range: Range(604, 683), items: [623, 630], want_response: true }], wants: [189, 274], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(276, 326), fp: EncodedCountingMonoid(3, SumMonoid(910)) }, Fingerprint { range: Range(326, 344), fp: EncodedCountingMonoid(3, SumMonoid(999)) }], item_sets: [ItemSet { range: Range(604, 683), items: [604, 613, 617, 618, 641, 655, 679], want_response: false }, ItemSet { range: Range(48, 108), items: [94], want_response: true }, ItemSet { range: Range(108, 189), items: [110, 181], want_response: true }, ItemSet { range: Range(344, 392), items: [353], want_response: true }, ItemSet { range: Range(392, 419), items: [392, 405], want_response: true }, ItemSet { range: Range(419, 523), items: [419, 481], want_response: true }, ItemSet { range: Range(523, 597), items: [546, 595], want_response: true }, ItemSet { range: Range(597, 604), items: [597], want_response: true }, ItemSet { range: Range(683, 736), items: [683, 727], want_response: true }, ItemSet { range: Range(736, 752), items: [736], want_response: true }, ItemSet { range: Range(752, 803), items: [785, 797], want_response: true }, ItemSet { range: Range(803, 842), items: [803], want_response: true }, ItemSet { range: Range(842, 868), items: [845], want_response: true }, ItemSet { range: Range(868, 947), items: [875, 926], want_response: true }, ItemSet { range: Range(947, 977), items: [947], want_response: true }, ItemSet { range: Range(977, 1000), items: [977, 987], want_response: true }], wants: [200, 202, 210, 243, 256, 263, 275, 623, 630], provide: [(189, true), (274, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(48, 108), items: [48, 78, 83, 100], want_response: false }, ItemSet { range: Range(108, 189), items: [108, 133, 155], want_response: false }, ItemSet { range: Range(344, 392), items: [344, 355, 385], want_response: false }, ItemSet { range: Range(392, 419), items: [399, 407], want_response: false }, ItemSet { range: Range(419, 523), items: [446, 468], want_response: false }, ItemSet { range: Range(523, 597), items: [523, 571], want_response: false }, ItemSet { range: Range(597, 604), items: [601], want_response: false }, ItemSet { range: Range(683, 736), items: [698, 705, 711, 712, 715, 717, 723], want_response: false }, ItemSet { range: Range(736, 752), items: [], want_response: false }, ItemSet { range: Range(752, 803), items: [752, 760, 775, 788, 797], want_response: false }, ItemSet { range: Range(803, 842), items: [813], want_response: false }, ItemSet { range: Range(842, 868), items: [842, 862, 864, 866], want_response: false }, ItemSet { range: Range(868, 947), items: [868, 875, 896, 909], want_response: false }, ItemSet { range: Range(947, 977), items: [954, 964, 968, 972], want_response: false }, ItemSet { range: Range(977, 1000), items: [977, 987, 999], want_response: false }, ItemSet { range: Range(276, 315), items: [276, 294], want_response: true }, ItemSet { range: Range(315, 326), items: [315], want_response: true }, ItemSet { range: Range(326, 344), items: [337], want_response: true }], wants: [604, 613, 617, 618, 641, 655, 679, 94, 110, 181, 353, 392, 405, 419, 481, 546, 595, 597, 683, 727, 736, 785, 803, 845, 926, 947], provide: [(200, true), (202, true), (210, true), (243, true), (256, true), (263, true), (275, true), (623, true), (630, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(276, 315), items: [286, 308], want_response: false }, ItemSet { range: Range(315, 326), items: [316], want_response: false }, ItemSet { range: Range(326, 344), items: [326, 334, 339], want_response: false }], wants: [48, 78, 83, 100, 108, 133, 155, 344, 355, 385, 399, 407, 446, 468, 523, 571, 601, 698, 705, 711, 712, 715, 717, 723, 752, 760, 775, 788, 813, 842, 862, 864, 866, 868, 896, 909, 954, 964, 968, 972, 999, 276, 294, 315, 337], provide: [(604, true), (613, true), (617, true), (618, true), (641, true), (655, true), (679, true), (94, true), (110, true), (181, true), (353, true), (392, true), (405, true), (419, true), (481, true), (546, true), (595, true), (597, true), (683, true), (727, true), (736, true), (785, true), (803, true), (845, true), (926, true), (947, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [286, 308, 316, 326, 334, 339], provide: [(48, true), (78, true), (83, true), (100, true), (108, true), (133, true), (155, true), (344, true), (355, true), (385, true), (399, true), (407, true), (446, true), (468, true), (523, true), (571, true), (601, true), (698, true), (705, true), (711, true), (712, true), (715, true), (717, true), (723, true), (752, true), (760, true), (775, true), (788, true), (813, true), (842, true), (862, true), (864, true), (866, true), (868, true), (896, true), (909, true), (954, true), (964, true), (968, true), (972, true), (999, true), (276, true), (294, true), (315, true), (337, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(286, true), (308, true), (316, true), (326, true), (334, true), (339, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {48, 78, 83, 100, 108, 133, 155, 200, 202, 210, 243, 256, 263, 275, 276, 294, 315, 337, 344, 355, 385, 399, 407, 446, 468, 523, 571, 601, 623, 630, 698, 705, 711, 712, 715, 717, 723, 752, 760, 775, 788, 797, 813, 842, 862, 864, 866, 868, 875, 896, 909, 954, 964, 968, 972, 977, 987, 999} + [23, 46, 189, 274, 604, 613, 617, 618, 641, 655, 679, 94, 110, 181, 353, 392, 405, 419, 481, 546, 595, 597, 683, 727, 736, 785, 803, 845, 926, 947, 286, 308, 316, 326, 334, 339]
[INFO] [stdout] b all: {23, 46, 94, 110, 181, 189, 274, 286, 308, 316, 326, 334, 339, 353, 392, 405, 419, 481, 546, 595, 597, 604, 613, 617, 618, 641, 655, 679, 683, 727, 736, 785, 797, 803, 845, 875, 926, 947, 977, 987} + [200, 202, 210, 243, 256, 263, 275, 623, 630, 48, 78, 83, 100, 108, 133, 155, 344, 355, 385, 399, 407, 446, 468, 523, 571, 601, 698, 705, 711, 712, 715, 717, 723, 752, 760, 775, 788, 813, 842, 862, 864, 866, 868, 896, 909, 954, 964, 968, 972, 999, 276, 294, 315, 337]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [23, 46, 48, 78, 83, 94, 100, 108, 110, 133, 155, 181, 189, 200, 202, 210, 243, 256, 263, 274, 275, 276, 286, 294, 308, 315, 316, 326, 334, 337, 339, 344, 353, 355, 385, 392, 399, 405, 407, 419, 446, 468, 481, 523, 546, 571, 595, 597, 601, 604, 613, 617, 618, 623, 630, 641, 655, 679, 683, 698, 705, 711, 712, 715, 717, 723, 727, 736, 752, 760, 775, 785, 788, 797, 803, 813, 842, 845, 862, 864, 866, 868, 875, 896, 909, 926, 947, 954, 964, 968, 972, 977, 987, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [23, 46, 48, 78, 83, 94, 100, 108, 110, 133, 155, 181, 189, 200, 202, 210, 243, 256, 263, 274, 275, 276, 286, 294, 308, 315, 316, 326, 334, 337, 339, 344, 353, 355, 385, 392, 399, 405, 407, 419, 446, 468, 481, 523, 546, 571, 595, 597, 601, 604, 613, 617, 618, 623, 630, 641, 655, 679, 683, 698, 705, 711, 712, 715, 717, 723, 727, 736, 752, 760, 775, 785, 788, 797, 803, 813, 842, 845, 862, 864, 866, 868, 875, 896, 909, 926, 947, 954, 964, 968, 972, 977, 987, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [23, 46, 48, 78, 83, 94, 100, 108, 110, 133, 155, 181, 189, 200, 202, 210, 243, 256, 263, 274, 275, 276, 286, 294, 308, 315, 316, 326, 334, 337, 339, 344, 353, 355, 385, 392, 399, 405, 407, 419, 446, 468, 481, 523, 546, 571, 595, 597, 601, 604, 613, 617, 618, 623, 630, 641, 655, 679, 683, 698, 705, 711, 712, 715, 717, 723, 727, 736, 752, 760, 775, 785, 788, 797, 803, 813, 842, 845, 862, 864, 866, 868, 875, 896, 909, 926, 947, 954, 964, 968, 972, 977, 987, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {41, 42, 68, 78, 89, 135, 143, 173, 206, 218, 279, 300, 303, 327, 340, 341, 346, 358, 360, 411, 447, 493, 498, 513, 516, 530, 567, 577, 596, 615, 657, 711, 712, 728, 737, 749, 755, 763, 774, 790, 812, 817, 820, 830, 882, 896, 922, 923, 938, 943, 964, 989}
[INFO] [stdout] b items: {6, 10, 80, 145, 182, 222, 241, 279, 290, 330, 335, 350, 352, 384, 392, 400, 402, 404, 406, 418, 424, 457, 482, 579, 592, 604, 609, 637, 641, 675, 719, 723, 754, 774, 807, 845, 850, 895, 924, 954, 955, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(41, 990), fp: EncodedCountingMonoid(52, SumMonoid(28022)) }], item_sets: [ItemSet { range: Range(990, 41), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(41, 482), fp: EncodedCountingMonoid(20, SumMonoid(6493)) }, Fingerprint { range: Range(482, 990), fp: EncodedCountingMonoid(19, SumMonoid(14019)) }], item_sets: [ItemSet { range: Range(990, 41), items: [999, 6, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(41, 300), fp: EncodedCountingMonoid(11, SumMonoid(1472)) }, Fingerprint { range: Range(300, 482), fp: EncodedCountingMonoid(10, SumMonoid(3533)) }, Fingerprint { range: Range(482, 763), fp: EncodedCountingMonoid(16, SumMonoid(9954)) }, Fingerprint { range: Range(763, 990), fp: EncodedCountingMonoid(15, SumMonoid(13063)) }], item_sets: [], wants: [999, 6, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(41, 241), fp: EncodedCountingMonoid(4, SumMonoid(629)) }, Fingerprint { range: Range(241, 300), fp: EncodedCountingMonoid(3, SumMonoid(810)) }, Fingerprint { range: Range(300, 402), fp: EncodedCountingMonoid(7, SumMonoid(2543)) }, Fingerprint { range: Range(402, 482), fp: EncodedCountingMonoid(6, SumMonoid(2511)) }, Fingerprint { range: Range(482, 641), fp: EncodedCountingMonoid(6, SumMonoid(3503)) }, Fingerprint { range: Range(641, 763), fp: EncodedCountingMonoid(5, SumMonoid(3512)) }, Fingerprint { range: Range(763, 895), fp: EncodedCountingMonoid(4, SumMonoid(3276)) }, Fingerprint { range: Range(895, 990), fp: EncodedCountingMonoid(4, SumMonoid(3728)) }], item_sets: [], wants: [], provide: [(999, true), (6, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(41, 135), fp: EncodedCountingMonoid(5, SumMonoid(318)) }, Fingerprint { range: Range(135, 241), fp: EncodedCountingMonoid(5, SumMonoid(875)) }, Fingerprint { range: Range(300, 341), fp: EncodedCountingMonoid(4, SumMonoid(1270)) }, Fingerprint { range: Range(341, 402), fp: EncodedCountingMonoid(4, SumMonoid(1405)) }, Fingerprint { range: Range(482, 567), fp: EncodedCountingMonoid(5, SumMonoid(2550)) }, Fingerprint { range: Range(567, 641), fp: EncodedCountingMonoid(4, SumMonoid(2355)) }, Fingerprint { range: Range(641, 737), fp: EncodedCountingMonoid(4, SumMonoid(2808)) }, Fingerprint { range: Range(737, 763), fp: EncodedCountingMonoid(3, SumMonoid(2241)) }, Fingerprint { range: Range(763, 817), fp: EncodedCountingMonoid(4, SumMonoid(3139)) }, Fingerprint { range: Range(817, 895), fp: EncodedCountingMonoid(4, SumMonoid(3349)) }, Fingerprint { range: Range(895, 943), fp: EncodedCountingMonoid(4, SumMonoid(3679)) }, Fingerprint { range: Range(943, 990), fp: EncodedCountingMonoid(3, SumMonoid(2896)) }], item_sets: [ItemSet { range: Range(241, 300), items: [279], want_response: true }, ItemSet { range: Range(402, 482), items: [411, 447], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(341, 392), fp: EncodedCountingMonoid(3, SumMonoid(1086)) }, Fingerprint { range: Range(567, 609), fp: EncodedCountingMonoid(3, SumMonoid(1775)) }], item_sets: [ItemSet { range: Range(241, 300), items: [241, 279, 290], want_response: false }, ItemSet { range: Range(402, 482), items: [402, 404, 406, 418, 424, 457], want_response: false }, ItemSet { range: Range(41, 135), items: [80], want_response: true }, ItemSet { range: Range(135, 222), items: [145, 182], want_response: true }, ItemSet { range: Range(222, 241), items: [222], want_response: true }, ItemSet { range: Range(300, 341), items: [330, 335], want_response: true }, ItemSet { range: Range(392, 402), items: [392, 400], want_response: true }, ItemSet { range: Range(482, 567), items: [482], want_response: true }, ItemSet { range: Range(609, 641), items: [609, 637], want_response: true }, ItemSet { range: Range(641, 719), items: [641, 675], want_response: true }, ItemSet { range: Range(719, 737), items: [719, 723], want_response: true }, ItemSet { range: Range(737, 763), items: [754], want_response: true }, ItemSet { range: Range(763, 817), items: [774, 807], want_response: true }, ItemSet { range: Range(817, 895), items: [845, 850], want_response: true }, ItemSet { range: Range(895, 943), items: [895, 924], want_response: true }, ItemSet { range: Range(943, 990), items: [954, 955], want_response: true }], wants: [411, 447], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(41, 135), items: [41, 42, 68, 78, 89], want_response: false }, ItemSet { range: Range(135, 222), items: [135, 143, 173, 206, 218], want_response: false }, ItemSet { range: Range(222, 241), items: [], want_response: false }, ItemSet { range: Range(300, 341), items: [300, 303, 327, 340], want_response: false }, ItemSet { range: Range(392, 402), items: [], want_response: false }, ItemSet { range: Range(482, 567), items: [493, 498, 513, 516, 530], want_response: false }, ItemSet { range: Range(609, 641), items: [615], want_response: false }, ItemSet { range: Range(641, 719), items: [657, 711, 712], want_response: false }, ItemSet { range: Range(719, 737), items: [728], want_response: false }, ItemSet { range: Range(737, 763), items: [737, 749, 755], want_response: false }, ItemSet { range: Range(763, 817), items: [763, 774, 790, 812], want_response: false }, ItemSet { range: Range(817, 895), items: [817, 820, 830, 882], want_response: false }, ItemSet { range: Range(895, 943), items: [896, 922, 923, 938], want_response: false }, ItemSet { range: Range(943, 990), items: [943, 964, 989], want_response: false }, ItemSet { range: Range(341, 358), items: [341, 346], want_response: true }, ItemSet { range: Range(358, 392), items: [358, 360], want_response: true }, ItemSet { range: Range(567, 596), items: [567, 577], want_response: true }, ItemSet { range: Range(596, 609), items: [596], want_response: true }], wants: [241, 290, 402, 404, 406, 418, 424, 457, 80, 145, 182, 222, 330, 335, 392, 400, 482, 609, 637, 641, 675, 719, 723, 754, 807, 845, 850, 895, 924, 954, 955], provide: [(411, true), (447, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(341, 358), items: [350, 352], want_response: false }, ItemSet { range: Range(358, 392), items: [384], want_response: false }, ItemSet { range: Range(567, 596), items: [579, 592], want_response: false }, ItemSet { range: Range(596, 609), items: [604], want_response: false }], wants: [41, 42, 68, 78, 89, 135, 143, 173, 206, 218, 300, 303, 327, 340, 493, 498, 513, 516, 530, 615, 657, 711, 712, 728, 737, 749, 755, 763, 790, 812, 817, 820, 830, 882, 896, 922, 923, 938, 943, 964, 989, 341, 346, 358, 360, 567, 577, 596], provide: [(241, true), (290, true), (402, true), (404, true), (406, true), (418, true), (424, true), (457, true), (80, true), (145, true), (182, true), (222, true), (330, true), (335, true), (392, true), (400, true), (482, true), (609, true), (637, true), (641, true), (675, true), (719, true), (723, true), (754, true), (807, true), (845, true), (850, true), (895, true), (924, true), (954, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [350, 352, 384, 579, 592, 604], provide: [(41, true), (42, true), (68, true), (78, true), (89, true), (135, true), (143, true), (173, true), (206, true), (218, true), (300, true), (303, true), (327, true), (340, true), (493, true), (498, true), (513, true), (516, true), (530, true), (615, true), (657, true), (711, true), (712, true), (728, true), (737, true), (749, true), (755, true), (763, true), (790, true), (812, true), (817, true), (820, true), (830, true), (882, true), (896, true), (922, true), (923, true), (938, true), (943, true), (964, true), (989, true), (341, true), (346, true), (358, true), (360, true), (567, true), (577, true), (596, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(350, true), (352, true), (384, true), (579, true), (592, true), (604, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {41, 42, 68, 78, 89, 135, 143, 173, 206, 218, 279, 300, 303, 327, 340, 341, 346, 358, 360, 411, 447, 493, 498, 513, 516, 530, 567, 577, 596, 615, 657, 711, 712, 728, 737, 749, 755, 763, 774, 790, 812, 817, 820, 830, 882, 896, 922, 923, 938, 943, 964, 989} + [999, 6, 10, 241, 290, 402, 404, 406, 418, 424, 457, 80, 145, 182, 222, 330, 335, 392, 400, 482, 609, 637, 641, 675, 719, 723, 754, 807, 845, 850, 895, 924, 954, 955, 350, 352, 384, 579, 592, 604]
[INFO] [stdout] b all: {6, 10, 80, 145, 182, 222, 241, 279, 290, 330, 335, 350, 352, 384, 392, 400, 402, 404, 406, 418, 424, 457, 482, 579, 592, 604, 609, 637, 641, 675, 719, 723, 754, 774, 807, 845, 850, 895, 924, 954, 955, 999} + [411, 447, 41, 42, 68, 78, 89, 135, 143, 173, 206, 218, 300, 303, 327, 340, 493, 498, 513, 516, 530, 615, 657, 711, 712, 728, 737, 749, 755, 763, 790, 812, 817, 820, 830, 882, 896, 922, 923, 938, 943, 964, 989, 341, 346, 358, 360, 567, 577, 596]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 10, 41, 42, 68, 78, 80, 89, 135, 143, 145, 173, 182, 206, 218, 222, 241, 279, 290, 300, 303, 327, 330, 335, 340, 341, 346, 350, 352, 358, 360, 384, 392, 400, 402, 404, 406, 411, 418, 424, 447, 457, 482, 493, 498, 513, 516, 530, 567, 577, 579, 592, 596, 604, 609, 615, 637, 641, 657, 675, 711, 712, 719, 723, 728, 737, 749, 754, 755, 763, 774, 790, 807, 812, 817, 820, 830, 845, 850, 882, 895, 896, 922, 923, 924, 938, 943, 954, 955, 964, 989, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 10, 41, 42, 68, 78, 80, 89, 135, 143, 145, 173, 182, 206, 218, 222, 241, 279, 290, 300, 303, 327, 330, 335, 340, 341, 346, 350, 352, 358, 360, 384, 392, 400, 402, 404, 406, 411, 418, 424, 447, 457, 482, 493, 498, 513, 516, 530, 567, 577, 579, 592, 596, 604, 609, 615, 637, 641, 657, 675, 711, 712, 719, 723, 728, 737, 749, 754, 755, 763, 774, 790, 807, 812, 817, 820, 830, 845, 850, 882, 895, 896, 922, 923, 924, 938, 943, 954, 955, 964, 989, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 10, 41, 42, 68, 78, 80, 89, 135, 143, 145, 173, 182, 206, 218, 222, 241, 279, 290, 300, 303, 327, 330, 335, 340, 341, 346, 350, 352, 358, 360, 384, 392, 400, 402, 404, 406, 411, 418, 424, 447, 457, 482, 493, 498, 513, 516, 530, 567, 577, 579, 592, 596, 604, 609, 615, 637, 641, 657, 675, 711, 712, 719, 723, 728, 737, 749, 754, 755, 763, 774, 790, 807, 812, 817, 820, 830, 845, 850, 882, 895, 896, 922, 923, 924, 938, 943, 954, 955, 964, 989, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 64, 106, 111, 130, 205, 223, 230, 241, 253, 324, 328, 334, 380, 419, 429, 443, 478, 581, 598, 678, 705, 709, 710, 739, 740, 779, 786, 843, 878, 928, 956, 967}
[INFO] [stdout] b items: {11, 31, 50, 56, 57, 61, 83, 85, 149, 165, 166, 206, 218, 222, 223, 275, 277, 278, 318, 384, 391, 392, 395, 409, 410, 414, 415, 429, 430, 464, 485, 489, 510, 533, 540, 568, 615, 622, 637, 646, 649, 651, 665, 667, 695, 713, 718, 740, 808, 869, 881, 889, 894, 940, 956, 971, 973, 977, 978}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 968), fp: EncodedCountingMonoid(33, SumMonoid(16302)) }], item_sets: [ItemSet { range: Range(968, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 430), fp: EncodedCountingMonoid(28, SumMonoid(6570)) }, Fingerprint { range: Range(430, 968), fp: EncodedCountingMonoid(27, SumMonoid(18274)) }], item_sets: [ItemSet { range: Range(968, 7), items: [971, 973, 977, 978], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 241), fp: EncodedCountingMonoid(8, SumMonoid(1076)) }, Fingerprint { range: Range(241, 430), fp: EncodedCountingMonoid(8, SumMonoid(2708)) }, Fingerprint { range: Range(430, 740), fp: EncodedCountingMonoid(9, SumMonoid(5641)) }, Fingerprint { range: Range(740, 968), fp: EncodedCountingMonoid(8, SumMonoid(6877)) }], item_sets: [], wants: [971, 973, 977, 978], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 149), fp: EncodedCountingMonoid(8, SumMonoid(434)) }, Fingerprint { range: Range(149, 241), fp: EncodedCountingMonoid(7, SumMonoid(1349)) }, Fingerprint { range: Range(241, 395), fp: EncodedCountingMonoid(7, SumMonoid(2315)) }, Fingerprint { range: Range(395, 430), fp: EncodedCountingMonoid(6, SumMonoid(2472)) }, Fingerprint { range: Range(430, 637), fp: EncodedCountingMonoid(10, SumMonoid(5256)) }, Fingerprint { range: Range(637, 740), fp: EncodedCountingMonoid(9, SumMonoid(6041)) }, Fingerprint { range: Range(740, 889), fp: EncodedCountingMonoid(4, SumMonoid(3298)) }, Fingerprint { range: Range(889, 968), fp: EncodedCountingMonoid(4, SumMonoid(3679)) }], item_sets: [], wants: [], provide: [(971, true), (973, true), (977, true), (978, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 111), fp: EncodedCountingMonoid(3, SumMonoid(177)) }, Fingerprint { range: Range(241, 328), fp: EncodedCountingMonoid(3, SumMonoid(818)) }, Fingerprint { range: Range(328, 395), fp: EncodedCountingMonoid(3, SumMonoid(1042)) }, Fingerprint { range: Range(637, 710), fp: EncodedCountingMonoid(3, SumMonoid(2092)) }, Fingerprint { range: Range(740, 843), fp: EncodedCountingMonoid(3, SumMonoid(2305)) }], item_sets: [ItemSet { range: Range(111, 149), items: [111, 130], want_response: true }, ItemSet { range: Range(149, 230), items: [205, 223], want_response: true }, ItemSet { range: Range(230, 241), items: [230], want_response: true }, ItemSet { range: Range(395, 430), items: [419, 429], want_response: true }, ItemSet { range: Range(430, 581), items: [443, 478], want_response: true }, ItemSet { range: Range(581, 637), items: [581, 598], want_response: true }, ItemSet { range: Range(710, 740), items: [710, 739], want_response: true }, ItemSet { range: Range(843, 889), items: [843, 878], want_response: true }, ItemSet { range: Range(889, 967), items: [928, 956], want_response: true }, ItemSet { range: Range(967, 968), items: [967], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 57), fp: EncodedCountingMonoid(4, SumMonoid(148)) }, Fingerprint { range: Range(57, 111), fp: EncodedCountingMonoid(4, SumMonoid(286)) }, Fingerprint { range: Range(637, 665), fp: EncodedCountingMonoid(4, SumMonoid(2583)) }, Fingerprint { range: Range(665, 710), fp: EncodedCountingMonoid(3, SumMonoid(2027)) }], item_sets: [ItemSet { range: Range(111, 149), items: [], want_response: false }, ItemSet { range: Range(149, 230), items: [149, 165, 166, 206, 218, 222, 223], want_response: false }, ItemSet { range: Range(230, 241), items: [], want_response: false }, ItemSet { range: Range(395, 430), items: [395, 409, 410, 414, 415, 429], want_response: false }, ItemSet { range: Range(430, 581), items: [430, 464, 485, 489, 510, 533, 540, 568], want_response: false }, ItemSet { range: Range(581, 637), items: [615, 622], want_response: false }, ItemSet { range: Range(710, 740), items: [713, 718], want_response: false }, ItemSet { range: Range(843, 889), items: [869, 881], want_response: false }, ItemSet { range: Range(889, 967), items: [889, 894, 940, 956], want_response: false }, ItemSet { range: Range(967, 968), items: [], want_response: false }, ItemSet { range: Range(241, 278), items: [275, 277], want_response: true }, ItemSet { range: Range(278, 328), items: [278, 318], want_response: true }, ItemSet { range: Range(328, 392), items: [384, 391], want_response: true }, ItemSet { range: Range(392, 395), items: [392], want_response: true }, ItemSet { range: Range(740, 843), items: [740, 808], want_response: true }], wants: [111, 130, 205, 230, 419, 443, 478, 581, 598, 710, 739, 843, 878, 928, 967], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(241, 278), items: [241, 253], want_response: false }, ItemSet { range: Range(278, 328), items: [324], want_response: false }, ItemSet { range: Range(328, 392), items: [328, 334, 380], want_response: false }, ItemSet { range: Range(392, 395), items: [], want_response: false }, ItemSet { range: Range(740, 843), items: [740, 779, 786], want_response: false }, ItemSet { range: Range(7, 57), items: [7], want_response: true }, ItemSet { range: Range(57, 111), items: [64, 106], want_response: true }, ItemSet { range: Range(637, 665), items: [], want_response: true }, ItemSet { range: Range(665, 709), items: [678, 705], want_response: true }, ItemSet { range: Range(709, 710), items: [709], want_response: true }], wants: [149, 165, 166, 206, 218, 222, 395, 409, 410, 414, 415, 430, 464, 485, 489, 510, 533, 540, 568, 615, 622, 713, 718, 869, 881, 889, 894, 940, 275, 277, 278, 318, 384, 391, 392, 808], provide: [(111, true), (130, true), (205, true), (230, true), (419, true), (443, true), (478, true), (581, true), (598, true), (710, true), (739, true), (843, true), (878, true), (928, true), (967, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 57), items: [11, 31, 50, 56], want_response: false }, ItemSet { range: Range(57, 111), items: [57, 61, 83, 85], want_response: false }, ItemSet { range: Range(637, 665), items: [637, 646, 649, 651], want_response: false }, ItemSet { range: Range(665, 709), items: [665, 667, 695], want_response: false }, ItemSet { range: Range(709, 710), items: [], want_response: false }], wants: [241, 253, 324, 328, 334, 380, 779, 786, 7, 64, 106, 678, 705, 709], provide: [(149, true), (165, true), (166, true), (206, true), (218, true), (222, true), (395, true), (409, true), (410, true), (414, true), (415, true), (430, true), (464, true), (485, true), (489, true), (510, true), (533, true), (540, true), (568, true), (615, true), (622, true), (713, true), (718, true), (869, true), (881, true), (889, true), (894, true), (940, true), (275, true), (277, true), (278, true), (318, true), (384, true), (391, true), (392, true), (808, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [11, 31, 50, 56, 57, 61, 83, 85, 637, 646, 649, 651, 665, 667, 695], provide: [(241, true), (253, true), (324, true), (328, true), (334, true), (380, true), (779, true), (786, true), (7, true), (64, true), (106, true), (678, true), (705, true), (709, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(11, true), (31, true), (50, true), (56, true), (57, true), (61, true), (83, true), (85, true), (637, true), (646, true), (649, true), (651, true), (665, true), (667, true), (695, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 64, 106, 111, 130, 205, 223, 230, 241, 253, 324, 328, 334, 380, 419, 429, 443, 478, 581, 598, 678, 705, 709, 710, 739, 740, 779, 786, 843, 878, 928, 956, 967} + [971, 973, 977, 978, 149, 165, 166, 206, 218, 222, 395, 409, 410, 414, 415, 430, 464, 485, 489, 510, 533, 540, 568, 615, 622, 713, 718, 869, 881, 889, 894, 940, 275, 277, 278, 318, 384, 391, 392, 808, 11, 31, 50, 56, 57, 61, 83, 85, 637, 646, 649, 651, 665, 667, 695]
[INFO] [stdout] b all: {11, 31, 50, 56, 57, 61, 83, 85, 149, 165, 166, 206, 218, 222, 223, 275, 277, 278, 318, 384, 391, 392, 395, 409, 410, 414, 415, 429, 430, 464, 485, 489, 510, 533, 540, 568, 615, 622, 637, 646, 649, 651, 665, 667, 695, 713, 718, 740, 808, 869, 881, 889, 894, 940, 956, 971, 973, 977, 978} + [111, 130, 205, 230, 419, 443, 478, 581, 598, 710, 739, 843, 878, 928, 967, 241, 253, 324, 328, 334, 380, 779, 786, 7, 64, 106, 678, 705, 709]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 11, 31, 50, 56, 57, 61, 64, 83, 85, 106, 111, 130, 149, 165, 166, 205, 206, 218, 222, 223, 230, 241, 253, 275, 277, 278, 318, 324, 328, 334, 380, 384, 391, 392, 395, 409, 410, 414, 415, 419, 429, 430, 443, 464, 478, 485, 489, 510, 533, 540, 568, 581, 598, 615, 622, 637, 646, 649, 651, 665, 667, 678, 695, 705, 709, 710, 713, 718, 739, 740, 779, 786, 808, 843, 869, 878, 881, 889, 894, 928, 940, 956, 967, 971, 973, 977, 978]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 11, 31, 50, 56, 57, 61, 64, 83, 85, 106, 111, 130, 149, 165, 166, 205, 206, 218, 222, 223, 230, 241, 253, 275, 277, 278, 318, 324, 328, 334, 380, 384, 391, 392, 395, 409, 410, 414, 415, 419, 429, 430, 443, 464, 478, 485, 489, 510, 533, 540, 568, 581, 598, 615, 622, 637, 646, 649, 651, 665, 667, 678, 695, 705, 709, 710, 713, 718, 739, 740, 779, 786, 808, 843, 869, 878, 881, 889, 894, 928, 940, 956, 967, 971, 973, 977, 978], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 11, 31, 50, 56, 57, 61, 64, 83, 85, 106, 111, 130, 149, 165, 166, 205, 206, 218, 222, 223, 230, 241, 253, 275, 277, 278, 318, 324, 328, 334, 380, 384, 391, 392, 395, 409, 410, 414, 415, 419, 429, 430, 443, 464, 478, 485, 489, 510, 533, 540, 568, 581, 598, 615, 622, 637, 646, 649, 651, 665, 667, 678, 695, 705, 709, 710, 713, 718, 739, 740, 779, 786, 808, 843, 869, 878, 881, 889, 894, 928, 940, 956, 967, 971, 973, 977, 978], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {56, 115, 119, 260, 348, 553, 746, 803, 920, 975}
[INFO] [stdout] b items: {50, 52, 152, 186, 196, 305, 370, 374, 394, 399, 400, 419, 446, 486, 487, 491, 526, 559, 560, 572, 580, 591, 640, 700, 710, 738, 756, 760, 784, 816, 849, 971, 991, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(56, 976), fp: EncodedCountingMonoid(10, SumMonoid(4895)) }], item_sets: [ItemSet { range: Range(976, 56), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(56, 559), fp: EncodedCountingMonoid(15, SumMonoid(5631)) }, Fingerprint { range: Range(559, 976), fp: EncodedCountingMonoid(15, SumMonoid(10586)) }], item_sets: [ItemSet { range: Range(976, 56), items: [991, 997, 50, 52], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(56, 260), fp: EncodedCountingMonoid(3, SumMonoid(290)) }, Fingerprint { range: Range(260, 559), fp: EncodedCountingMonoid(3, SumMonoid(1161)) }], item_sets: [ItemSet { range: Range(559, 920), items: [746, 803], want_response: true }, ItemSet { range: Range(920, 976), items: [920, 975], want_response: true }], wants: [991, 997, 50, 52], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(260, 419), fp: EncodedCountingMonoid(6, SumMonoid(2242)) }, Fingerprint { range: Range(419, 559), fp: EncodedCountingMonoid(6, SumMonoid(2855)) }], item_sets: [ItemSet { range: Range(559, 920), items: [559, 560, 572, 580, 591, 640, 700, 710, 738, 756, 760, 784, 816, 849], want_response: false }, ItemSet { range: Range(920, 976), items: [971], want_response: false }, ItemSet { range: Range(56, 196), items: [152, 186], want_response: true }, ItemSet { range: Range(196, 260), items: [196], want_response: true }], wants: [746, 803, 920, 975], provide: [(991, true), (997, true), (50, true), (52, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(56, 196), items: [56, 115, 119], want_response: false }, ItemSet { range: Range(196, 260), items: [], want_response: false }, ItemSet { range: Range(260, 419), items: [260, 348], want_response: true }, ItemSet { range: Range(419, 559), items: [553], want_response: true }], wants: [559, 560, 572, 580, 591, 640, 700, 710, 738, 756, 760, 784, 816, 849, 971, 152, 186, 196], provide: [(746, true), (803, true), (920, true), (975, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(260, 419), items: [305, 370, 374, 394, 399, 400], want_response: false }, ItemSet { range: Range(419, 559), items: [419, 446, 486, 487, 491, 526], want_response: false }], wants: [56, 115, 119, 260, 348, 553], provide: [(559, true), (560, true), (572, true), (580, true), (591, true), (640, true), (700, true), (710, true), (738, true), (756, true), (760, true), (784, true), (816, true), (849, true), (971, true), (152, true), (186, true), (196, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [305, 370, 374, 394, 399, 400, 419, 446, 486, 487, 491, 526], provide: [(56, true), (115, true), (119, true), (260, true), (348, true), (553, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(305, true), (370, true), (374, true), (394, true), (399, true), (400, true), (419, true), (446, true), (486, true), (487, true), (491, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {56, 115, 119, 260, 348, 553, 746, 803, 920, 975} + [991, 997, 50, 52, 559, 560, 572, 580, 591, 640, 700, 710, 738, 756, 760, 784, 816, 849, 971, 152, 186, 196, 305, 370, 374, 394, 399, 400, 419, 446, 486, 487, 491, 526]
[INFO] [stdout] b all: {50, 52, 152, 186, 196, 305, 370, 374, 394, 399, 400, 419, 446, 486, 487, 491, 526, 559, 560, 572, 580, 591, 640, 700, 710, 738, 756, 760, 784, 816, 849, 971, 991, 997} + [746, 803, 920, 975, 56, 115, 119, 260, 348, 553]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [50, 52, 56, 115, 119, 152, 186, 196, 260, 305, 348, 370, 374, 394, 399, 400, 419, 446, 486, 487, 491, 526, 553, 559, 560, 572, 580, 591, 640, 700, 710, 738, 746, 756, 760, 784, 803, 816, 849, 920, 971, 975, 991, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [50, 52, 56, 115, 119, 152, 186, 196, 260, 305, 348, 370, 374, 394, 399, 400, 419, 446, 486, 487, 491, 526, 553, 559, 560, 572, 580, 591, 640, 700, 710, 738, 746, 756, 760, 784, 803, 816, 849, 920, 971, 975, 991, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [50, 52, 56, 115, 119, 152, 186, 196, 260, 305, 348, 370, 374, 394, 399, 400, 419, 446, 486, 487, 491, 526, 553, 559, 560, 572, 580, 591, 640, 700, 710, 738, 746, 756, 760, 784, 803, 816, 849, 920, 971, 975, 991, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 346, 587, 845}
[INFO] [stdout] b items: {10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 357, 379, 389, 392, 396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 587, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783, 845, 864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 846), fp: EncodedCountingMonoid(4, SumMonoid(1787)) }], item_sets: [ItemSet { range: Range(846, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 396), fp: EncodedCountingMonoid(25, SumMonoid(4847)) }, Fingerprint { range: Range(396, 846), fp: EncodedCountingMonoid(25, SumMonoid(15206)) }], item_sets: [ItemSet { range: Range(846, 9), items: [864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 396), items: [9, 346], want_response: true }, ItemSet { range: Range(396, 846), items: [587, 845], want_response: true }], wants: [864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 396), items: [10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 357, 379, 389, 392], want_response: false }, ItemSet { range: Range(396, 846), items: [396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 587, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783, 845], want_response: false }], wants: [9, 346], provide: [(864, true), (867, true), (885, true), (886, true), (895, true), (896, true), (902, true), (911, true), (920, true), (921, true), (948, true), (952, true), (953, true), (960, true), (964, true), (965, true), (969, true), (976, true), (987, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 357, 379, 389, 392, 396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783], provide: [(9, true), (346, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(10, true), (12, true), (24, true), (25, true), (28, true), (86, true), (92, true), (96, true), (98, true), (121, true), (133, true), (167, true), (181, true), (198, true), (229, true), (258, true), (266, true), (308, true), (319, true), (339, true), (340, true), (357, true), (379, true), (389, true), (392, true), (396, true), (408, true), (429, true), (436, true), (454, true), (521, true), (531, true), (549, true), (554, true), (563, true), (578, true), (612, true), (621, true), (654, true), (666, true), (667, true), (703, true), (706, true), (719, true), (729, true), (731, true), (764, true), (783, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 346, 587, 845} + [864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987, 10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 357, 379, 389, 392, 396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783]
[INFO] [stdout] b all: {10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 357, 379, 389, 392, 396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 587, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783, 845, 864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987} + [9, 346]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 346, 357, 379, 389, 392, 396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 587, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783, 845, 864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 346, 357, 379, 389, 392, 396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 587, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783, 845, 864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 10, 12, 24, 25, 28, 86, 92, 96, 98, 121, 133, 167, 181, 198, 229, 258, 266, 308, 319, 339, 340, 346, 357, 379, 389, 392, 396, 408, 429, 436, 454, 521, 531, 549, 554, 563, 578, 587, 612, 621, 654, 666, 667, 703, 706, 719, 729, 731, 764, 783, 845, 864, 867, 885, 886, 895, 896, 902, 911, 920, 921, 948, 952, 953, 960, 964, 965, 969, 976, 987], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {171, 220, 284, 303, 420, 432, 489, 503, 535, 590, 648, 690, 716, 764, 784, 872, 894, 921, 972, 992}
[INFO] [stdout] b items: {9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165, 176, 179, 196, 206, 213, 224, 230, 241, 242, 256, 264, 267, 276, 289, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 431, 449, 452, 456, 458, 488, 494, 496, 509, 514, 518, 535, 546, 579, 589, 615, 624, 635, 668, 673, 676, 680, 697, 711, 725, 739, 740, 745, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864, 873, 879, 891, 895, 898, 942, 948, 956, 957, 971, 972, 975}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(171, 993), fp: EncodedCountingMonoid(20, SumMonoid(12200)) }], item_sets: [ItemSet { range: Range(993, 171), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(171, 579), fp: EncodedCountingMonoid(37, SumMonoid(13121)) }, Fingerprint { range: Range(579, 993), fp: EncodedCountingMonoid(37, SumMonoid(29421)) }], item_sets: [ItemSet { range: Range(993, 171), items: [9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(171, 432), fp: EncodedCountingMonoid(5, SumMonoid(1398)) }, Fingerprint { range: Range(432, 579), fp: EncodedCountingMonoid(4, SumMonoid(1959)) }, Fingerprint { range: Range(579, 872), fp: EncodedCountingMonoid(6, SumMonoid(4192)) }, Fingerprint { range: Range(872, 993), fp: EncodedCountingMonoid(5, SumMonoid(4651)) }], item_sets: [], wants: [9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(171, 289), fp: EncodedCountingMonoid(13, SumMonoid(2970)) }, Fingerprint { range: Range(289, 432), fp: EncodedCountingMonoid(12, SumMonoid(4236)) }, Fingerprint { range: Range(432, 496), fp: EncodedCountingMonoid(6, SumMonoid(2797)) }, Fingerprint { range: Range(496, 579), fp: EncodedCountingMonoid(6, SumMonoid(3118)) }, Fingerprint { range: Range(579, 740), fp: EncodedCountingMonoid(13, SumMonoid(8611)) }, Fingerprint { range: Range(740, 872), fp: EncodedCountingMonoid(12, SumMonoid(9653)) }, Fingerprint { range: Range(872, 948), fp: EncodedCountingMonoid(6, SumMonoid(5378)) }, Fingerprint { range: Range(948, 993), fp: EncodedCountingMonoid(6, SumMonoid(5779)) }], item_sets: [], wants: [], provide: [(9, true), (31, true), (36, true), (39, true), (40, true), (41, true), (59, true), (63, true), (72, true), (104, true), (115, true), (117, true), (126, true), (137, true), (138, true), (140, true), (146, true), (148, true), (162, true), (165, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(171, 284), items: [171, 220], want_response: true }, ItemSet { range: Range(284, 289), items: [284], want_response: true }, ItemSet { range: Range(289, 432), items: [303, 420], want_response: true }, ItemSet { range: Range(432, 496), items: [432, 489], want_response: true }, ItemSet { range: Range(496, 579), items: [503, 535], want_response: true }, ItemSet { range: Range(579, 690), items: [590, 648], want_response: true }, ItemSet { range: Range(690, 740), items: [690, 716], want_response: true }, ItemSet { range: Range(740, 872), items: [764, 784], want_response: true }, ItemSet { range: Range(872, 921), items: [872, 894], want_response: true }, ItemSet { range: Range(921, 948), items: [921], want_response: true }, ItemSet { range: Range(948, 993), items: [972, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(171, 284), items: [176, 179, 196, 206, 213, 224, 230, 241, 242, 256, 264, 267, 276], want_response: false }, ItemSet { range: Range(284, 289), items: [], want_response: false }, ItemSet { range: Range(289, 432), items: [289, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 431], want_response: false }, ItemSet { range: Range(432, 496), items: [449, 452, 456, 458, 488, 494], want_response: false }, ItemSet { range: Range(496, 579), items: [496, 509, 514, 518, 535, 546], want_response: false }, ItemSet { range: Range(579, 690), items: [579, 589, 615, 624, 635, 668, 673, 676, 680], want_response: false }, ItemSet { range: Range(690, 740), items: [697, 711, 725, 739], want_response: false }, ItemSet { range: Range(740, 872), items: [740, 745, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864], want_response: false }, ItemSet { range: Range(872, 921), items: [873, 879, 891, 895, 898], want_response: false }, ItemSet { range: Range(921, 948), items: [942], want_response: false }, ItemSet { range: Range(948, 993), items: [948, 956, 957, 971, 972, 975], want_response: false }], wants: [171, 220, 284, 303, 420, 432, 489, 503, 590, 648, 690, 716, 764, 784, 872, 894, 921, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [176, 179, 196, 206, 213, 224, 230, 241, 242, 256, 264, 267, 276, 289, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 431, 449, 452, 456, 458, 488, 494, 496, 509, 514, 518, 546, 579, 589, 615, 624, 635, 668, 673, 676, 680, 697, 711, 725, 739, 740, 745, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864, 873, 879, 891, 895, 898, 942, 948, 956, 957, 971, 975], provide: [(171, true), (220, true), (284, true), (303, true), (420, true), (432, true), (489, true), (503, true), (590, true), (648, true), (690, true), (716, true), (764, true), (784, true), (872, true), (894, true), (921, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(176, true), (179, true), (196, true), (206, true), (213, true), (224, true), (230, true), (241, true), (242, true), (256, true), (264, true), (267, true), (276, true), (289, true), (312, true), (315, true), (339, true), (341, true), (342, true), (348, true), (353, true), (373, true), (382, true), (411, true), (431, true), (449, true), (452, true), (456, true), (458, true), (488, true), (494, true), (496, true), (509, true), (514, true), (518, true), (546, true), (579, true), (589, true), (615, true), (624, true), (635, true), (668, true), (673, true), (676, true), (680, true), (697, true), (711, true), (725, true), (739, true), (740, true), (745, true), (797, true), (798, true), (799, true), (801, true), (806, true), (807, true), (811, true), (835, true), (850, true), (864, true), (873, true), (879, true), (891, true), (895, true), (898, true), (942, true), (948, true), (956, true), (957, true), (971, true), (975, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {171, 220, 284, 303, 420, 432, 489, 503, 535, 590, 648, 690, 716, 764, 784, 872, 894, 921, 972, 992} + [9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165, 176, 179, 196, 206, 213, 224, 230, 241, 242, 256, 264, 267, 276, 289, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 431, 449, 452, 456, 458, 488, 494, 496, 509, 514, 518, 546, 579, 589, 615, 624, 635, 668, 673, 676, 680, 697, 711, 725, 739, 740, 745, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864, 873, 879, 891, 895, 898, 942, 948, 956, 957, 971, 975]
[INFO] [stdout] b all: {9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165, 176, 179, 196, 206, 213, 224, 230, 241, 242, 256, 264, 267, 276, 289, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 431, 449, 452, 456, 458, 488, 494, 496, 509, 514, 518, 535, 546, 579, 589, 615, 624, 635, 668, 673, 676, 680, 697, 711, 725, 739, 740, 745, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864, 873, 879, 891, 895, 898, 942, 948, 956, 957, 971, 972, 975} + [171, 220, 284, 303, 420, 432, 489, 503, 590, 648, 690, 716, 764, 784, 872, 894, 921, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165, 171, 176, 179, 196, 206, 213, 220, 224, 230, 241, 242, 256, 264, 267, 276, 284, 289, 303, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 420, 431, 432, 449, 452, 456, 458, 488, 489, 494, 496, 503, 509, 514, 518, 535, 546, 579, 589, 590, 615, 624, 635, 648, 668, 673, 676, 680, 690, 697, 711, 716, 725, 739, 740, 745, 764, 784, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864, 872, 873, 879, 891, 894, 895, 898, 921, 942, 948, 956, 957, 971, 972, 975, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165, 171, 176, 179, 196, 206, 213, 220, 224, 230, 241, 242, 256, 264, 267, 276, 284, 289, 303, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 420, 431, 432, 449, 452, 456, 458, 488, 489, 494, 496, 503, 509, 514, 518, 535, 546, 579, 589, 590, 615, 624, 635, 648, 668, 673, 676, 680, 690, 697, 711, 716, 725, 739, 740, 745, 764, 784, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864, 872, 873, 879, 891, 894, 895, 898, 921, 942, 948, 956, 957, 971, 972, 975, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 31, 36, 39, 40, 41, 59, 63, 72, 104, 115, 117, 126, 137, 138, 140, 146, 148, 162, 165, 171, 176, 179, 196, 206, 213, 220, 224, 230, 241, 242, 256, 264, 267, 276, 284, 289, 303, 312, 315, 339, 341, 342, 348, 353, 373, 382, 411, 420, 431, 432, 449, 452, 456, 458, 488, 489, 494, 496, 503, 509, 514, 518, 535, 546, 579, 589, 590, 615, 624, 635, 648, 668, 673, 676, 680, 690, 697, 711, 716, 725, 739, 740, 745, 764, 784, 797, 798, 799, 801, 806, 807, 811, 835, 850, 864, 872, 873, 879, 891, 894, 895, 898, 921, 942, 948, 956, 957, 971, 972, 975, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {10, 24, 39, 41, 67, 101, 104, 181, 182, 200, 236, 238, 256, 277, 290, 309, 322, 327, 332, 334, 339, 344, 349, 361, 363, 365, 386, 429, 454, 465, 467, 470, 471, 499, 503, 526, 527, 530, 533, 547, 551, 567, 571, 589, 606, 616, 627, 639, 658, 678, 693, 698, 700, 718, 720, 732, 756, 765, 794, 795, 809, 819, 821, 830, 831, 839, 847, 855, 857, 858, 871, 895, 904, 923, 929, 931, 933, 936, 944, 952, 955, 970, 983, 993}
[INFO] [stdout] b items: {2, 36, 39, 61, 113, 118, 119, 124, 136, 179, 187, 202, 211, 221, 227, 228, 244, 252, 268, 272, 297, 304, 309, 310, 319, 362, 363, 371, 408, 443, 457, 471, 494, 505, 507, 508, 538, 588, 594, 605, 645, 705, 733, 736, 746, 759, 789, 812, 817, 824, 825, 881, 883, 905, 906, 912, 920, 958}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 994), fp: EncodedCountingMonoid(84, SumMonoid(47756)) }], item_sets: [ItemSet { range: Range(994, 10), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 457), fp: EncodedCountingMonoid(29, SumMonoid(6723)) }, Fingerprint { range: Range(457, 994), fp: EncodedCountingMonoid(28, SumMonoid(20023)) }], item_sets: [ItemSet { range: Range(994, 10), items: [2], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 309), fp: EncodedCountingMonoid(15, SumMonoid(2246)) }, Fingerprint { range: Range(309, 457), fp: EncodedCountingMonoid(14, SumMonoid(5014)) }, Fingerprint { range: Range(457, 765), fp: EncodedCountingMonoid(28, SumMonoid(16657)) }, Fingerprint { range: Range(765, 994), fp: EncodedCountingMonoid(27, SumMonoid(23839)) }], item_sets: [], wants: [2], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 211), fp: EncodedCountingMonoid(11, SumMonoid(1314)) }, Fingerprint { range: Range(211, 309), fp: EncodedCountingMonoid(10, SumMonoid(2524)) }, Fingerprint { range: Range(309, 363), fp: EncodedCountingMonoid(4, SumMonoid(1300)) }, Fingerprint { range: Range(363, 457), fp: EncodedCountingMonoid(4, SumMonoid(1585)) }, Fingerprint { range: Range(457, 594), fp: EncodedCountingMonoid(8, SumMonoid(4068)) }, Fingerprint { range: Range(594, 765), fp: EncodedCountingMonoid(8, SumMonoid(5523)) }, Fingerprint { range: Range(765, 883), fp: EncodedCountingMonoid(6, SumMonoid(4948)) }, Fingerprint { range: Range(883, 994), fp: EncodedCountingMonoid(6, SumMonoid(5484)) }], item_sets: [], wants: [], provide: [(2, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 101), fp: EncodedCountingMonoid(5, SumMonoid(181)) }, Fingerprint { range: Range(101, 211), fp: EncodedCountingMonoid(5, SumMonoid(768)) }, Fingerprint { range: Range(211, 277), fp: EncodedCountingMonoid(3, SumMonoid(730)) }, Fingerprint { range: Range(309, 339), fp: EncodedCountingMonoid(5, SumMonoid(1624)) }, Fingerprint { range: Range(339, 363), fp: EncodedCountingMonoid(4, SumMonoid(1393)) }, Fingerprint { range: Range(363, 429), fp: EncodedCountingMonoid(3, SumMonoid(1114)) }, Fingerprint { range: Range(457, 530), fp: EncodedCountingMonoid(8, SumMonoid(3928)) }, Fingerprint { range: Range(530, 594), fp: EncodedCountingMonoid(7, SumMonoid(3888)) }, Fingerprint { range: Range(594, 698), fp: EncodedCountingMonoid(7, SumMonoid(4517)) }, Fingerprint { range: Range(698, 765), fp: EncodedCountingMonoid(6, SumMonoid(4324)) }, Fingerprint { range: Range(765, 831), fp: EncodedCountingMonoid(7, SumMonoid(5633)) }, Fingerprint { range: Range(831, 883), fp: EncodedCountingMonoid(7, SumMonoid(5958)) }, Fingerprint { range: Range(883, 944), fp: EncodedCountingMonoid(7, SumMonoid(6451)) }, Fingerprint { range: Range(944, 994), fp: EncodedCountingMonoid(6, SumMonoid(5797)) }], item_sets: [ItemSet { range: Range(277, 309), items: [277, 290], want_response: true }, ItemSet { range: Range(429, 457), items: [429, 454], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(101, 136), fp: EncodedCountingMonoid(4, SumMonoid(474)) }, Fingerprint { range: Range(136, 211), fp: EncodedCountingMonoid(4, SumMonoid(704)) }, Fingerprint { range: Range(211, 244), fp: EncodedCountingMonoid(4, SumMonoid(887)) }, Fingerprint { range: Range(244, 277), fp: EncodedCountingMonoid(4, SumMonoid(1036)) }, Fingerprint { range: Range(457, 505), fp: EncodedCountingMonoid(3, SumMonoid(1422)) }, Fingerprint { range: Range(505, 530), fp: EncodedCountingMonoid(3, SumMonoid(1520)) }, Fingerprint { range: Range(698, 746), fp: EncodedCountingMonoid(3, SumMonoid(2174)) }, Fingerprint { range: Range(765, 824), fp: EncodedCountingMonoid(3, SumMonoid(2418)) }, Fingerprint { range: Range(883, 912), fp: EncodedCountingMonoid(3, SumMonoid(2694)) }], item_sets: [ItemSet { range: Range(277, 309), items: [297, 304], want_response: false }, ItemSet { range: Range(429, 457), items: [443], want_response: false }, ItemSet { range: Range(10, 61), items: [36, 39], want_response: true }, ItemSet { range: Range(61, 101), items: [61], want_response: true }, ItemSet { range: Range(309, 319), items: [309, 310], want_response: true }, ItemSet { range: Range(319, 339), items: [319], want_response: true }, ItemSet { range: Range(339, 363), items: [362], want_response: true }, ItemSet { range: Range(363, 408), items: [363, 371], want_response: true }, ItemSet { range: Range(408, 429), items: [408], want_response: true }, ItemSet { range: Range(530, 594), items: [538, 588], want_response: true }, ItemSet { range: Range(594, 645), items: [594, 605], want_response: true }, ItemSet { range: Range(645, 698), items: [645], want_response: true }, ItemSet { range: Range(746, 765), items: [746, 759], want_response: true }, ItemSet { range: Range(824, 831), items: [824, 825], want_response: true }, ItemSet { range: Range(831, 883), items: [881], want_response: true }, ItemSet { range: Range(912, 944), items: [912, 920], want_response: true }, ItemSet { range: Range(944, 994), items: [958], want_response: true }], wants: [277, 290, 429, 454], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(457, 471), fp: EncodedCountingMonoid(3, SumMonoid(1402)) }, Fingerprint { range: Range(471, 505), fp: EncodedCountingMonoid(3, SumMonoid(1473)) }, Fingerprint { range: Range(698, 720), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(765, 809), fp: EncodedCountingMonoid(3, SumMonoid(2354)) }, Fingerprint { range: Range(809, 824), fp: EncodedCountingMonoid(3, SumMonoid(2449)) }], item_sets: [ItemSet { range: Range(10, 61), items: [10, 24, 39, 41], want_response: false }, ItemSet { range: Range(61, 101), items: [67], want_response: false }, ItemSet { range: Range(309, 319), items: [309], want_response: false }, ItemSet { range: Range(319, 339), items: [322, 327, 332, 334], want_response: false }, ItemSet { range: Range(339, 363), items: [339, 344, 349, 361], want_response: false }, ItemSet { range: Range(363, 408), items: [363, 365, 386], want_response: false }, ItemSet { range: Range(408, 429), items: [], want_response: false }, ItemSet { range: Range(530, 594), items: [530, 533, 547, 551, 567, 571, 589], want_response: false }, ItemSet { range: Range(594, 645), items: [606, 616, 627, 639], want_response: false }, ItemSet { range: Range(645, 698), items: [658, 678, 693], want_response: false }, ItemSet { range: Range(746, 765), items: [756], want_response: false }, ItemSet { range: Range(824, 831), items: [830], want_response: false }, ItemSet { range: Range(831, 883), items: [831, 839, 847, 855, 857, 858, 871], want_response: false }, ItemSet { range: Range(912, 944), items: [923, 929, 931, 933, 936], want_response: false }, ItemSet { range: Range(944, 994), items: [944, 952, 955, 970, 983, 993], want_response: false }, ItemSet { range: Range(101, 136), items: [101, 104], want_response: true }, ItemSet { range: Range(136, 200), items: [181, 182], want_response: true }, ItemSet { range: Range(200, 211), items: [200], want_response: true }, ItemSet { range: Range(211, 244), items: [236, 238], want_response: true }, ItemSet { range: Range(244, 277), items: [256], want_response: true }, ItemSet { range: Range(505, 530), items: [526, 527], want_response: true }, ItemSet { range: Range(720, 746), items: [720, 732], want_response: true }, ItemSet { range: Range(883, 912), items: [895, 904], want_response: true }], wants: [297, 304, 443, 36, 61, 310, 319, 362, 371, 408, 538, 588, 594, 605, 645, 746, 759, 824, 825, 881, 912, 920, 958], provide: [(277, true), (290, true), (429, true), (454, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(101, 136), items: [113, 118, 119, 124], want_response: false }, ItemSet { range: Range(136, 200), items: [136, 179, 187], want_response: false }, ItemSet { range: Range(200, 211), items: [202], want_response: false }, ItemSet { range: Range(211, 244), items: [211, 221, 227, 228], want_response: false }, ItemSet { range: Range(244, 277), items: [244, 252, 268, 272], want_response: false }, ItemSet { range: Range(505, 530), items: [505, 507, 508], want_response: false }, ItemSet { range: Range(720, 746), items: [733, 736], want_response: false }, ItemSet { range: Range(883, 912), items: [883, 905, 906], want_response: false }, ItemSet { range: Range(457, 471), items: [457], want_response: true }, ItemSet { range: Range(471, 505), items: [471, 494], want_response: true }, ItemSet { range: Range(698, 720), items: [705], want_response: true }, ItemSet { range: Range(765, 809), items: [789], want_response: true }, ItemSet { range: Range(809, 824), items: [812, 817], want_response: true }], wants: [10, 24, 41, 67, 322, 327, 332, 334, 339, 344, 349, 361, 365, 386, 530, 533, 547, 551, 567, 571, 589, 606, 616, 627, 639, 658, 678, 693, 756, 830, 831, 839, 847, 855, 857, 858, 871, 923, 929, 931, 933, 936, 944, 952, 955, 970, 983, 993, 101, 104, 181, 182, 200, 236, 238, 256, 526, 527, 720, 732, 895, 904], provide: [(297, true), (304, true), (443, true), (36, true), (61, true), (310, true), (319, true), (362, true), (371, true), (408, true), (538, true), (588, true), (594, true), (605, true), (645, true), (746, true), (759, true), (824, true), (825, true), (881, true), (912, true), (920, true), (958, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(457, 471), items: [465, 467, 470], want_response: false }, ItemSet { range: Range(471, 505), items: [471, 499, 503], want_response: false }, ItemSet { range: Range(698, 720), items: [698, 700, 718], want_response: false }, ItemSet { range: Range(765, 809), items: [765, 794, 795], want_response: false }, ItemSet { range: Range(809, 824), items: [809, 819, 821], want_response: false }], wants: [113, 118, 119, 124, 136, 179, 187, 202, 211, 221, 227, 228, 244, 252, 268, 272, 505, 507, 508, 733, 736, 883, 905, 906, 457, 494, 705, 789, 812, 817], provide: [(10, true), (24, true), (41, true), (67, true), (322, true), (327, true), (332, true), (334, true), (339, true), (344, true), (349, true), (361, true), (365, true), (386, true), (530, true), (533, true), (547, true), (551, true), (567, true), (571, true), (589, true), (606, true), (616, true), (627, true), (639, true), (658, true), (678, true), (693, true), (756, true), (830, true), (831, true), (839, true), (847, true), (855, true), (857, true), (858, true), (871, true), (923, true), (929, true), (931, true), (933, true), (936, true), (944, true), (952, true), (955, true), (970, true), (983, true), (993, true), (101, true), (104, true), (181, true), (182, true), (200, true), (236, true), (238, true), (256, true), (526, true), (527, true), (720, true), (732, true), (895, true), (904, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [465, 467, 470, 499, 503, 698, 700, 718, 765, 794, 795, 809, 819, 821], provide: [(113, true), (118, true), (119, true), (124, true), (136, true), (179, true), (187, true), (202, true), (211, true), (221, true), (227, true), (228, true), (244, true), (252, true), (268, true), (272, true), (505, true), (507, true), (508, true), (733, true), (736, true), (883, true), (905, true), (906, true), (457, true), (494, true), (705, true), (789, true), (812, true), (817, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(465, true), (467, true), (470, true), (499, true), (503, true), (698, true), (700, true), (718, true), (765, true), (794, true), (795, true), (809, true), (819, true), (821, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {10, 24, 39, 41, 67, 101, 104, 181, 182, 200, 236, 238, 256, 277, 290, 309, 322, 327, 332, 334, 339, 344, 349, 361, 363, 365, 386, 429, 454, 465, 467, 470, 471, 499, 503, 526, 527, 530, 533, 547, 551, 567, 571, 589, 606, 616, 627, 639, 658, 678, 693, 698, 700, 718, 720, 732, 756, 765, 794, 795, 809, 819, 821, 830, 831, 839, 847, 855, 857, 858, 871, 895, 904, 923, 929, 931, 933, 936, 944, 952, 955, 970, 983, 993} + [2, 297, 304, 443, 36, 61, 310, 319, 362, 371, 408, 538, 588, 594, 605, 645, 746, 759, 824, 825, 881, 912, 920, 958, 113, 118, 119, 124, 136, 179, 187, 202, 211, 221, 227, 228, 244, 252, 268, 272, 505, 507, 508, 733, 736, 883, 905, 906, 457, 494, 705, 789, 812, 817]
[INFO] [stdout] b all: {2, 36, 39, 61, 113, 118, 119, 124, 136, 179, 187, 202, 211, 221, 227, 228, 244, 252, 268, 272, 297, 304, 309, 310, 319, 362, 363, 371, 408, 443, 457, 471, 494, 505, 507, 508, 538, 588, 594, 605, 645, 705, 733, 736, 746, 759, 789, 812, 817, 824, 825, 881, 883, 905, 906, 912, 920, 958} + [277, 290, 429, 454, 10, 24, 41, 67, 322, 327, 332, 334, 339, 344, 349, 361, 365, 386, 530, 533, 547, 551, 567, 571, 589, 606, 616, 627, 639, 658, 678, 693, 756, 830, 831, 839, 847, 855, 857, 858, 871, 923, 929, 931, 933, 936, 944, 952, 955, 970, 983, 993, 101, 104, 181, 182, 200, 236, 238, 256, 526, 527, 720, 732, 895, 904, 465, 467, 470, 499, 503, 698, 700, 718, 765, 794, 795, 809, 819, 821]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 10, 24, 36, 39, 41, 61, 67, 101, 104, 113, 118, 119, 124, 136, 179, 181, 182, 187, 200, 202, 211, 221, 227, 228, 236, 238, 244, 252, 256, 268, 272, 277, 290, 297, 304, 309, 310, 319, 322, 327, 332, 334, 339, 344, 349, 361, 362, 363, 365, 371, 386, 408, 429, 443, 454, 457, 465, 467, 470, 471, 494, 499, 503, 505, 507, 508, 526, 527, 530, 533, 538, 547, 551, 567, 571, 588, 589, 594, 605, 606, 616, 627, 639, 645, 658, 678, 693, 698, 700, 705, 718, 720, 732, 733, 736, 746, 756, 759, 765, 789, 794, 795, 809, 812, 817, 819, 821, 824, 825, 830, 831, 839, 847, 855, 857, 858, 871, 881, 883, 895, 904, 905, 906, 912, 920, 923, 929, 931, 933, 936, 944, 952, 955, 958, 970, 983, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 10, 24, 36, 39, 41, 61, 67, 101, 104, 113, 118, 119, 124, 136, 179, 181, 182, 187, 200, 202, 211, 221, 227, 228, 236, 238, 244, 252, 256, 268, 272, 277, 290, 297, 304, 309, 310, 319, 322, 327, 332, 334, 339, 344, 349, 361, 362, 363, 365, 371, 386, 408, 429, 443, 454, 457, 465, 467, 470, 471, 494, 499, 503, 505, 507, 508, 526, 527, 530, 533, 538, 547, 551, 567, 571, 588, 589, 594, 605, 606, 616, 627, 639, 645, 658, 678, 693, 698, 700, 705, 718, 720, 732, 733, 736, 746, 756, 759, 765, 789, 794, 795, 809, 812, 817, 819, 821, 824, 825, 830, 831, 839, 847, 855, 857, 858, 871, 881, 883, 895, 904, 905, 906, 912, 920, 923, 929, 931, 933, 936, 944, 952, 955, 958, 970, 983, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 10, 24, 36, 39, 41, 61, 67, 101, 104, 113, 118, 119, 124, 136, 179, 181, 182, 187, 200, 202, 211, 221, 227, 228, 236, 238, 244, 252, 256, 268, 272, 277, 290, 297, 304, 309, 310, 319, 322, 327, 332, 334, 339, 344, 349, 361, 362, 363, 365, 371, 386, 408, 429, 443, 454, 457, 465, 467, 470, 471, 494, 499, 503, 505, 507, 508, 526, 527, 530, 533, 538, 547, 551, 567, 571, 588, 589, 594, 605, 606, 616, 627, 639, 645, 658, 678, 693, 698, 700, 705, 718, 720, 732, 733, 736, 746, 756, 759, 765, 789, 794, 795, 809, 812, 817, 819, 821, 824, 825, 830, 831, 839, 847, 855, 857, 858, 871, 881, 883, 895, 904, 905, 906, 912, 920, 923, 929, 931, 933, 936, 944, 952, 955, 958, 970, 983, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {16, 63, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993}
[INFO] [stdout] b items: {130}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 994), fp: EncodedCountingMonoid(46, SumMonoid(26029)) }], item_sets: [ItemSet { range: Range(994, 16), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(994, 16), items: [], want_response: false }, ItemSet { range: Range(16, 994), items: [130], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(16, 994), items: [16, 63, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993], want_response: false }], wants: [130], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [16, 63, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993], provide: [(130, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(16, true), (63, true), (131, true), (143, true), (151, true), (155, true), (197, true), (210, true), (217, true), (228, true), (229, true), (247, true), (349, true), (351, true), (402, true), (456, true), (462, true), (508, true), (534, true), (541, true), (587, true), (591, true), (643, true), (645, true), (651, true), (652, true), (718, true), (722, true), (727, true), (736, true), (737, true), (743, true), (745, true), (746, true), (758, true), (759, true), (834, true), (867, true), (909, true), (914, true), (917, true), (930, true), (961, true), (968, true), (986, true), (993, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {16, 63, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993} + [130]
[INFO] [stdout] b all: {130} + [16, 63, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [16, 63, 130, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [16, 63, 130, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [16, 63, 130, 131, 143, 151, 155, 197, 210, 217, 228, 229, 247, 349, 351, 402, 456, 462, 508, 534, 541, 587, 591, 643, 645, 651, 652, 718, 722, 727, 736, 737, 743, 745, 746, 758, 759, 834, 867, 909, 914, 917, 930, 961, 968, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {10, 84, 333, 455, 479, 532, 745, 763, 766, 791, 823, 836, 837, 867, 955, 988, 995}
[INFO] [stdout] b items: {1, 5, 13, 136, 210, 230, 306, 318, 348, 369, 378, 379, 418, 439, 452, 461, 544, 681, 699, 718, 728, 734, 746, 754, 787, 790, 846, 885, 896, 916, 944, 974, 988}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 996), fp: EncodedCountingMonoid(17, SumMonoid(11259)) }], item_sets: [ItemSet { range: Range(996, 10), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 699), fp: EncodedCountingMonoid(16, SumMonoid(5682)) }, Fingerprint { range: Range(699, 996), fp: EncodedCountingMonoid(15, SumMonoid(12405)) }], item_sets: [ItemSet { range: Range(996, 10), items: [1, 5], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 455), fp: EncodedCountingMonoid(3, SumMonoid(427)) }, Fingerprint { range: Range(455, 699), fp: EncodedCountingMonoid(3, SumMonoid(1466)) }, Fingerprint { range: Range(699, 837), fp: EncodedCountingMonoid(6, SumMonoid(4724)) }, Fingerprint { range: Range(837, 996), fp: EncodedCountingMonoid(5, SumMonoid(4642)) }], item_sets: [], wants: [1, 5], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 369), fp: EncodedCountingMonoid(7, SumMonoid(1561)) }, Fingerprint { range: Range(369, 455), fp: EncodedCountingMonoid(6, SumMonoid(2435)) }, Fingerprint { range: Range(699, 746), fp: EncodedCountingMonoid(4, SumMonoid(2879)) }, Fingerprint { range: Range(746, 837), fp: EncodedCountingMonoid(4, SumMonoid(3077)) }, Fingerprint { range: Range(837, 944), fp: EncodedCountingMonoid(4, SumMonoid(3543)) }, Fingerprint { range: Range(944, 996), fp: EncodedCountingMonoid(3, SumMonoid(2906)) }], item_sets: [ItemSet { range: Range(455, 681), items: [461, 544], want_response: true }, ItemSet { range: Range(681, 699), items: [681], want_response: true }], wants: [], provide: [(1, true), (5, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(746, 823), fp: EncodedCountingMonoid(3, SumMonoid(2320)) }], item_sets: [ItemSet { range: Range(455, 681), items: [455, 479, 532], want_response: false }, ItemSet { range: Range(681, 699), items: [], want_response: false }, ItemSet { range: Range(10, 333), items: [10, 84], want_response: true }, ItemSet { range: Range(333, 369), items: [333], want_response: true }, ItemSet { range: Range(369, 455), items: [], want_response: true }, ItemSet { range: Range(699, 746), items: [745], want_response: true }, ItemSet { range: Range(823, 837), items: [823, 836], want_response: true }, ItemSet { range: Range(837, 944), items: [837, 867], want_response: true }, ItemSet { range: Range(944, 995), items: [955, 988], want_response: true }, ItemSet { range: Range(995, 996), items: [995], want_response: true }], wants: [461, 544, 681], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(10, 333), items: [13, 136, 210, 230, 306, 318], want_response: false }, ItemSet { range: Range(333, 369), items: [348], want_response: false }, ItemSet { range: Range(369, 455), items: [369, 378, 379, 418, 439, 452], want_response: false }, ItemSet { range: Range(699, 746), items: [699, 718, 728, 734], want_response: false }, ItemSet { range: Range(823, 837), items: [], want_response: false }, ItemSet { range: Range(837, 944), items: [846, 885, 896, 916], want_response: false }, ItemSet { range: Range(944, 995), items: [944, 974, 988], want_response: false }, ItemSet { range: Range(995, 996), items: [], want_response: false }, ItemSet { range: Range(746, 787), items: [746, 754], want_response: true }, ItemSet { range: Range(787, 823), items: [787, 790], want_response: true }], wants: [455, 479, 532, 10, 84, 333, 745, 823, 836, 837, 867, 955, 995], provide: [(461, true), (544, true), (681, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(746, 787), items: [763, 766], want_response: false }, ItemSet { range: Range(787, 823), items: [791], want_response: false }], wants: [13, 136, 210, 230, 306, 318, 348, 369, 378, 379, 418, 439, 452, 699, 718, 728, 734, 846, 885, 896, 916, 944, 974, 746, 754, 787, 790], provide: [(455, true), (479, true), (532, true), (10, true), (84, true), (333, true), (745, true), (823, true), (836, true), (837, true), (867, true), (955, true), (995, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [763, 766, 791], provide: [(13, true), (136, true), (210, true), (230, true), (306, true), (318, true), (348, true), (369, true), (378, true), (379, true), (418, true), (439, true), (452, true), (699, true), (718, true), (728, true), (734, true), (846, true), (885, true), (896, true), (916, true), (944, true), (974, true), (746, true), (754, true), (787, true), (790, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(763, true), (766, true), (791, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {10, 84, 333, 455, 479, 532, 745, 763, 766, 791, 823, 836, 837, 867, 955, 988, 995} + [1, 5, 461, 544, 681, 13, 136, 210, 230, 306, 318, 348, 369, 378, 379, 418, 439, 452, 699, 718, 728, 734, 846, 885, 896, 916, 944, 974, 746, 754, 787, 790]
[INFO] [stdout] b all: {1, 5, 13, 136, 210, 230, 306, 318, 348, 369, 378, 379, 418, 439, 452, 461, 544, 681, 699, 718, 728, 734, 746, 754, 787, 790, 846, 885, 896, 916, 944, 974, 988} + [455, 479, 532, 10, 84, 333, 745, 823, 836, 837, 867, 955, 995, 763, 766, 791]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 5, 10, 13, 84, 136, 210, 230, 306, 318, 333, 348, 369, 378, 379, 418, 439, 452, 455, 461, 479, 532, 544, 681, 699, 718, 728, 734, 745, 746, 754, 763, 766, 787, 790, 791, 823, 836, 837, 846, 867, 885, 896, 916, 944, 955, 974, 988, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 5, 10, 13, 84, 136, 210, 230, 306, 318, 333, 348, 369, 378, 379, 418, 439, 452, 455, 461, 479, 532, 544, 681, 699, 718, 728, 734, 745, 746, 754, 763, 766, 787, 790, 791, 823, 836, 837, 846, 867, 885, 896, 916, 944, 955, 974, 988, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 5, 10, 13, 84, 136, 210, 230, 306, 318, 333, 348, 369, 378, 379, 418, 439, 452, 455, 461, 479, 532, 544, 681, 699, 718, 728, 734, 745, 746, 754, 763, 766, 787, 790, 791, 823, 836, 837, 846, 867, 885, 896, 916, 944, 955, 974, 988, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {363, 506, 523, 692, 747, 785, 802, 920, 945, 956}
[INFO] [stdout] b items: {24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357, 408, 430, 446, 450, 466, 471, 474, 480, 487, 496, 531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 721, 728, 730, 732, 746, 757, 792, 808, 809, 812, 813, 814, 815, 817, 841, 852, 873, 876, 899, 908, 919, 920, 945, 958, 959, 965, 984, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(363, 957), fp: EncodedCountingMonoid(10, SumMonoid(7239)) }], item_sets: [ItemSet { range: Range(957, 363), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(363, 730), fp: EncodedCountingMonoid(22, SumMonoid(11937)) }, Fingerprint { range: Range(730, 957), fp: EncodedCountingMonoid(21, SumMonoid(17478)) }], item_sets: [ItemSet { range: Range(957, 363), items: [958, 959, 965, 984, 999, 24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(730, 920), fp: EncodedCountingMonoid(3, SumMonoid(2334)) }, Fingerprint { range: Range(920, 957), fp: EncodedCountingMonoid(3, SumMonoid(2821)) }], item_sets: [ItemSet { range: Range(363, 523), items: [363, 506], want_response: true }, ItemSet { range: Range(523, 730), items: [523, 692], want_response: true }], wants: [958, 959, 965, 984, 999, 24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(730, 815), fp: EncodedCountingMonoid(10, SumMonoid(7813)) }, Fingerprint { range: Range(815, 920), fp: EncodedCountingMonoid(9, SumMonoid(7800)) }], item_sets: [ItemSet { range: Range(363, 523), items: [408, 430, 446, 450, 466, 471, 474, 480, 487, 496], want_response: false }, ItemSet { range: Range(523, 730), items: [531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 721, 728], want_response: false }, ItemSet { range: Range(920, 957), items: [920, 945], want_response: true }], wants: [363, 506, 523, 692], provide: [(958, true), (959, true), (965, true), (984, true), (999, true), (24, true), (34, true), (40, true), (79, true), (89, true), (103, true), (106, true), (113, true), (158, true), (195, true), (232, true), (234, true), (245, true), (249, true), (274, true), (277, true), (285, true), (325, true), (337, true), (344, true), (345, true), (357, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(920, 957), items: [920, 945, 956], want_response: false }, ItemSet { range: Range(730, 802), items: [747, 785], want_response: true }, ItemSet { range: Range(802, 815), items: [802], want_response: true }, ItemSet { range: Range(815, 920), items: [], want_response: true }], wants: [408, 430, 446, 450, 466, 471, 474, 480, 487, 496, 531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 721, 728], provide: [(363, true), (506, true), (523, true), (692, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(730, 802), items: [730, 732, 746, 757, 792], want_response: false }, ItemSet { range: Range(802, 815), items: [808, 809, 812, 813, 814], want_response: false }, ItemSet { range: Range(815, 920), items: [815, 817, 841, 852, 873, 876, 899, 908, 919], want_response: false }], wants: [956, 747, 785, 802], provide: [(408, true), (430, true), (446, true), (450, true), (466, true), (471, true), (474, true), (480, true), (487, true), (496, true), (531, true), (542, true), (554, true), (563, true), (585, true), (586, true), (605, true), (609, true), (637, true), (668, true), (721, true), (728, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [730, 732, 746, 757, 792, 808, 809, 812, 813, 814, 815, 817, 841, 852, 873, 876, 899, 908, 919], provide: [(956, true), (747, true), (785, true), (802, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(730, true), (732, true), (746, true), (757, true), (792, true), (808, true), (809, true), (812, true), (813, true), (814, true), (815, true), (817, true), (841, true), (852, true), (873, true), (876, true), (899, true), (908, true), (919, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {363, 506, 523, 692, 747, 785, 802, 920, 945, 956} + [958, 959, 965, 984, 999, 24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357, 408, 430, 446, 450, 466, 471, 474, 480, 487, 496, 531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 721, 728, 730, 732, 746, 757, 792, 808, 809, 812, 813, 814, 815, 817, 841, 852, 873, 876, 899, 908, 919]
[INFO] [stdout] b all: {24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357, 408, 430, 446, 450, 466, 471, 474, 480, 487, 496, 531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 721, 728, 730, 732, 746, 757, 792, 808, 809, 812, 813, 814, 815, 817, 841, 852, 873, 876, 899, 908, 919, 920, 945, 958, 959, 965, 984, 999} + [363, 506, 523, 692, 956, 747, 785, 802]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357, 363, 408, 430, 446, 450, 466, 471, 474, 480, 487, 496, 506, 523, 531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 692, 721, 728, 730, 732, 746, 747, 757, 785, 792, 802, 808, 809, 812, 813, 814, 815, 817, 841, 852, 873, 876, 899, 908, 919, 920, 945, 956, 958, 959, 965, 984, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357, 363, 408, 430, 446, 450, 466, 471, 474, 480, 487, 496, 506, 523, 531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 692, 721, 728, 730, 732, 746, 747, 757, 785, 792, 802, 808, 809, 812, 813, 814, 815, 817, 841, 852, 873, 876, 899, 908, 919, 920, 945, 956, 958, 959, 965, 984, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [24, 34, 40, 79, 89, 103, 106, 113, 158, 195, 232, 234, 245, 249, 274, 277, 285, 325, 337, 344, 345, 357, 363, 408, 430, 446, 450, 466, 471, 474, 480, 487, 496, 506, 523, 531, 542, 554, 563, 585, 586, 605, 609, 637, 668, 692, 721, 728, 730, 732, 746, 747, 757, 785, 792, 802, 808, 809, 812, 813, 814, 815, 817, 841, 852, 873, 876, 899, 908, 919, 920, 945, 956, 958, 959, 965, 984, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 42, 78, 83, 146, 167, 177, 187, 217, 218, 222, 223, 261, 274, 361, 365, 384, 386, 394, 395, 407, 410, 446, 467, 490, 516, 530, 565, 596, 605, 623, 630, 637, 640, 653, 662, 676, 697, 720, 751, 791, 817, 834, 954, 985, 997}
[INFO] [stdout] b items: {14, 31, 103, 112, 134, 137, 142, 146, 167, 170, 197, 265, 311, 342, 371, 374, 432, 435, 525, 547, 553, 560, 632, 642, 651, 656, 669, 670, 696, 757, 829, 835, 854, 862, 900, 908, 937, 949, 959, 960, 961, 972, 976, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 998), fp: EncodedCountingMonoid(46, SumMonoid(21683)) }], item_sets: [ItemSet { range: Range(998, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 632), fp: EncodedCountingMonoid(22, SumMonoid(6068)) }, Fingerprint { range: Range(632, 998), fp: EncodedCountingMonoid(22, SumMonoid(18265)) }], item_sets: [ItemSet { range: Range(998, 4), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 384), fp: EncodedCountingMonoid(16, SumMonoid(3025)) }, Fingerprint { range: Range(384, 632), fp: EncodedCountingMonoid(16, SumMonoid(7844)) }, Fingerprint { range: Range(632, 751), fp: EncodedCountingMonoid(7, SumMonoid(4685)) }, Fingerprint { range: Range(751, 998), fp: EncodedCountingMonoid(7, SumMonoid(6129)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 167), fp: EncodedCountingMonoid(8, SumMonoid(819)) }, Fingerprint { range: Range(167, 384), fp: EncodedCountingMonoid(8, SumMonoid(2197)) }, Fingerprint { range: Range(384, 547), fp: EncodedCountingMonoid(3, SumMonoid(1392)) }, Fingerprint { range: Range(547, 632), fp: EncodedCountingMonoid(3, SumMonoid(1660)) }, Fingerprint { range: Range(632, 669), fp: EncodedCountingMonoid(4, SumMonoid(2581)) }, Fingerprint { range: Range(669, 751), fp: EncodedCountingMonoid(3, SumMonoid(2035)) }, Fingerprint { range: Range(751, 949), fp: EncodedCountingMonoid(8, SumMonoid(6882)) }, Fingerprint { range: Range(949, 998), fp: EncodedCountingMonoid(7, SumMonoid(6767)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 83), fp: EncodedCountingMonoid(3, SumMonoid(124)) }, Fingerprint { range: Range(167, 223), fp: EncodedCountingMonoid(6, SumMonoid(1188)) }, Fingerprint { range: Range(223, 384), fp: EncodedCountingMonoid(5, SumMonoid(1484)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(6, SumMonoid(2376)) }, Fingerprint { range: Range(446, 547), fp: EncodedCountingMonoid(5, SumMonoid(2449)) }, Fingerprint { range: Range(547, 623), fp: EncodedCountingMonoid(3, SumMonoid(1766)) }], item_sets: [ItemSet { range: Range(83, 167), items: [83, 146], want_response: true }, ItemSet { range: Range(623, 632), items: [623, 630], want_response: true }, ItemSet { range: Range(632, 653), items: [637, 640], want_response: true }, ItemSet { range: Range(653, 669), items: [653, 662], want_response: true }, ItemSet { range: Range(669, 720), items: [676, 697], want_response: true }, ItemSet { range: Range(720, 751), items: [720], want_response: true }, ItemSet { range: Range(751, 817), items: [751, 791], want_response: true }, ItemSet { range: Range(817, 949), items: [817, 834], want_response: true }, ItemSet { range: Range(949, 997), items: [954, 985], want_response: true }, ItemSet { range: Range(997, 998), items: [997], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(223, 371), fp: EncodedCountingMonoid(3, SumMonoid(918)) }], item_sets: [ItemSet { range: Range(83, 167), items: [103, 112, 134, 137, 142, 146], want_response: false }, ItemSet { range: Range(623, 632), items: [], want_response: false }, ItemSet { range: Range(632, 653), items: [632, 642, 651], want_response: false }, ItemSet { range: Range(653, 669), items: [656], want_response: false }, ItemSet { range: Range(669, 720), items: [669, 670, 696], want_response: false }, ItemSet { range: Range(720, 751), items: [], want_response: false }, ItemSet { range: Range(751, 817), items: [757], want_response: false }, ItemSet { range: Range(817, 949), items: [829, 835, 854, 862, 900, 908, 937], want_response: false }, ItemSet { range: Range(949, 997), items: [949, 959, 960, 961, 972, 976, 990], want_response: false }, ItemSet { range: Range(997, 998), items: [], want_response: false }, ItemSet { range: Range(4, 83), items: [14, 31], want_response: true }, ItemSet { range: Range(167, 197), items: [167, 170], want_response: true }, ItemSet { range: Range(197, 223), items: [197], want_response: true }, ItemSet { range: Range(371, 384), items: [371, 374], want_response: true }, ItemSet { range: Range(384, 446), items: [432, 435], want_response: true }, ItemSet { range: Range(446, 547), items: [525], want_response: true }, ItemSet { range: Range(547, 560), items: [547, 553], want_response: true }, ItemSet { range: Range(560, 623), items: [560], want_response: true }], wants: [83, 623, 630, 637, 640, 653, 662, 676, 697, 720, 751, 791, 817, 834, 954, 985, 997], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(223, 361), fp: EncodedCountingMonoid(3, SumMonoid(758)) }], item_sets: [ItemSet { range: Range(4, 83), items: [4, 42, 78], want_response: false }, ItemSet { range: Range(167, 197), items: [167, 177, 187], want_response: false }, ItemSet { range: Range(197, 223), items: [217, 218, 222], want_response: false }, ItemSet { range: Range(371, 384), items: [], want_response: false }, ItemSet { range: Range(384, 446), items: [384, 386, 394, 395, 407, 410], want_response: false }, ItemSet { range: Range(446, 547), items: [446, 467, 490, 516, 530], want_response: false }, ItemSet { range: Range(547, 560), items: [], want_response: false }, ItemSet { range: Range(560, 623), items: [565, 596, 605], want_response: false }, ItemSet { range: Range(361, 371), items: [361, 365], want_response: true }], wants: [103, 112, 134, 137, 142, 632, 642, 651, 656, 669, 670, 696, 757, 829, 835, 854, 862, 900, 908, 937, 949, 959, 960, 961, 972, 976, 990, 14, 31, 170, 197, 371, 374, 432, 435, 525, 547, 553, 560], provide: [(83, true), (623, true), (630, true), (637, true), (640, true), (653, true), (662, true), (676, true), (697, true), (720, true), (751, true), (791, true), (817, true), (834, true), (954, true), (985, true), (997, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(361, 371), items: [], want_response: false }, ItemSet { range: Range(223, 342), items: [265, 311], want_response: true }, ItemSet { range: Range(342, 361), items: [342], want_response: true }], wants: [4, 42, 78, 177, 187, 217, 218, 222, 384, 386, 394, 395, 407, 410, 446, 467, 490, 516, 530, 565, 596, 605, 361, 365], provide: [(103, true), (112, true), (134, true), (137, true), (142, true), (632, true), (642, true), (651, true), (656, true), (669, true), (670, true), (696, true), (757, true), (829, true), (835, true), (854, true), (862, true), (900, true), (908, true), (937, true), (949, true), (959, true), (960, true), (961, true), (972, true), (976, true), (990, true), (14, true), (31, true), (170, true), (197, true), (371, true), (374, true), (432, true), (435, true), (525, true), (547, true), (553, true), (560, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(223, 342), items: [223, 261, 274], want_response: false }, ItemSet { range: Range(342, 361), items: [], want_response: false }], wants: [265, 311, 342], provide: [(4, true), (42, true), (78, true), (177, true), (187, true), (217, true), (218, true), (222, true), (384, true), (386, true), (394, true), (395, true), (407, true), (410, true), (446, true), (467, true), (490, true), (516, true), (530, true), (565, true), (596, true), (605, true), (361, true), (365, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [223, 261, 274], provide: [(265, true), (311, true), (342, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(223, true), (261, true), (274, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 42, 78, 83, 146, 167, 177, 187, 217, 218, 222, 223, 261, 274, 361, 365, 384, 386, 394, 395, 407, 410, 446, 467, 490, 516, 530, 565, 596, 605, 623, 630, 637, 640, 653, 662, 676, 697, 720, 751, 791, 817, 834, 954, 985, 997} + [103, 112, 134, 137, 142, 632, 642, 651, 656, 669, 670, 696, 757, 829, 835, 854, 862, 900, 908, 937, 949, 959, 960, 961, 972, 976, 990, 14, 31, 170, 197, 371, 374, 432, 435, 525, 547, 553, 560, 265, 311, 342]
[INFO] [stdout] b all: {14, 31, 103, 112, 134, 137, 142, 146, 167, 170, 197, 265, 311, 342, 371, 374, 432, 435, 525, 547, 553, 560, 632, 642, 651, 656, 669, 670, 696, 757, 829, 835, 854, 862, 900, 908, 937, 949, 959, 960, 961, 972, 976, 990} + [83, 623, 630, 637, 640, 653, 662, 676, 697, 720, 751, 791, 817, 834, 954, 985, 997, 4, 42, 78, 177, 187, 217, 218, 222, 384, 386, 394, 395, 407, 410, 446, 467, 490, 516, 530, 565, 596, 605, 361, 365, 223, 261, 274]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 14, 31, 42, 78, 83, 103, 112, 134, 137, 142, 146, 167, 170, 177, 187, 197, 217, 218, 222, 223, 261, 265, 274, 311, 342, 361, 365, 371, 374, 384, 386, 394, 395, 407, 410, 432, 435, 446, 467, 490, 516, 525, 530, 547, 553, 560, 565, 596, 605, 623, 630, 632, 637, 640, 642, 651, 653, 656, 662, 669, 670, 676, 696, 697, 720, 751, 757, 791, 817, 829, 834, 835, 854, 862, 900, 908, 937, 949, 954, 959, 960, 961, 972, 976, 985, 990, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 14, 31, 42, 78, 83, 103, 112, 134, 137, 142, 146, 167, 170, 177, 187, 197, 217, 218, 222, 223, 261, 265, 274, 311, 342, 361, 365, 371, 374, 384, 386, 394, 395, 407, 410, 432, 435, 446, 467, 490, 516, 525, 530, 547, 553, 560, 565, 596, 605, 623, 630, 632, 637, 640, 642, 651, 653, 656, 662, 669, 670, 676, 696, 697, 720, 751, 757, 791, 817, 829, 834, 835, 854, 862, 900, 908, 937, 949, 954, 959, 960, 961, 972, 976, 985, 990, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 14, 31, 42, 78, 83, 103, 112, 134, 137, 142, 146, 167, 170, 177, 187, 197, 217, 218, 222, 223, 261, 265, 274, 311, 342, 361, 365, 371, 374, 384, 386, 394, 395, 407, 410, 432, 435, 446, 467, 490, 516, 525, 530, 547, 553, 560, 565, 596, 605, 623, 630, 632, 637, 640, 642, 651, 653, 656, 662, 669, 670, 676, 696, 697, 720, 751, 757, 791, 817, 829, 834, 835, 854, 862, 900, 908, 937, 949, 954, 959, 960, 961, 972, 976, 985, 990, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {296, 380, 951}
[INFO] [stdout] b items: {66, 131, 182, 190, 226, 238, 265, 270, 388, 419, 456, 481, 534, 556, 822, 869, 908}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(296, 952), fp: EncodedCountingMonoid(3, SumMonoid(1627)) }], item_sets: [ItemSet { range: Range(952, 296), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(296, 556), fp: EncodedCountingMonoid(5, SumMonoid(2278)) }, Fingerprint { range: Range(556, 952), fp: EncodedCountingMonoid(4, SumMonoid(3155)) }], item_sets: [ItemSet { range: Range(952, 296), items: [66, 131, 182, 190, 226, 238, 265, 270], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(296, 556), items: [296, 380], want_response: true }, ItemSet { range: Range(556, 952), items: [951], want_response: true }], wants: [66, 131, 182, 190, 226, 238, 265, 270], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(296, 556), items: [388, 419, 456, 481, 534], want_response: false }, ItemSet { range: Range(556, 952), items: [556, 822, 869, 908], want_response: false }], wants: [296, 380, 951], provide: [(66, true), (131, true), (182, true), (190, true), (226, true), (238, true), (265, true), (270, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [388, 419, 456, 481, 534, 556, 822, 869, 908], provide: [(296, true), (380, true), (951, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(388, true), (419, true), (456, true), (481, true), (534, true), (556, true), (822, true), (869, true), (908, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {296, 380, 951} + [66, 131, 182, 190, 226, 238, 265, 270, 388, 419, 456, 481, 534, 556, 822, 869, 908]
[INFO] [stdout] b all: {66, 131, 182, 190, 226, 238, 265, 270, 388, 419, 456, 481, 534, 556, 822, 869, 908} + [296, 380, 951]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [66, 131, 182, 190, 226, 238, 265, 270, 296, 380, 388, 419, 456, 481, 534, 556, 822, 869, 908, 951]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [66, 131, 182, 190, 226, 238, 265, 270, 296, 380, 388, 419, 456, 481, 534, 556, 822, 869, 908, 951], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [66, 131, 182, 190, 226, 238, 265, 270, 296, 380, 388, 419, 456, 481, 534, 556, 822, 869, 908, 951], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {18, 49, 73, 74, 102, 107, 110, 114, 120, 125, 126, 142, 147, 150, 159, 165, 235, 255, 267, 293, 295, 309, 328, 330, 358, 361, 363, 379, 395, 400, 403, 406, 415, 427, 491, 502, 515, 521, 527, 530, 534, 537, 552, 566, 583, 597, 610, 628, 632, 633, 647, 673, 682, 700, 707, 742, 756, 763, 768, 769, 772, 774, 780, 788, 794, 799, 802, 834, 871, 906, 913, 920, 921, 922, 926, 934, 971, 978, 986, 994}
[INFO] [stdout] b items: {3, 28, 40, 45, 49, 51, 60, 71, 83, 84, 113, 118, 133, 137, 143, 151, 154, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230, 240, 246, 252, 259, 269, 277, 288, 296, 316, 338, 342, 343, 355, 360, 374, 386, 387, 400, 427, 432, 451, 472, 483, 501, 508, 540, 547, 559, 560, 566, 629, 631, 646, 650, 696, 728, 734, 741, 743, 746, 751, 761, 776, 791, 797, 811, 822, 825, 829, 833, 843, 855, 859, 865, 866, 873, 876, 883, 906, 918, 933, 935, 938, 945, 976, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 995), fp: EncodedCountingMonoid(80, SumMonoid(41750)) }], item_sets: [ItemSet { range: Range(995, 18), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(18, 432), fp: EncodedCountingMonoid(46, SumMonoid(9813)) }, Fingerprint { range: Range(432, 995), fp: EncodedCountingMonoid(46, SumMonoid(34030)) }], item_sets: [ItemSet { range: Range(995, 18), items: [997, 3], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 255), fp: EncodedCountingMonoid(17, SumMonoid(2016)) }, Fingerprint { range: Range(255, 432), fp: EncodedCountingMonoid(17, SumMonoid(5984)) }, Fingerprint { range: Range(432, 763), fp: EncodedCountingMonoid(23, SumMonoid(13865)) }, Fingerprint { range: Range(763, 995), fp: EncodedCountingMonoid(23, SumMonoid(19885)) }], item_sets: [], wants: [997, 3], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(18, 154), fp: EncodedCountingMonoid(15, SumMonoid(1306)) }, Fingerprint { range: Range(154, 255), fp: EncodedCountingMonoid(15, SumMonoid(3090)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(8, SumMonoid(2385)) }, Fingerprint { range: Range(343, 432), fp: EncodedCountingMonoid(8, SumMonoid(3032)) }, Fingerprint { range: Range(432, 631), fp: EncodedCountingMonoid(12, SumMonoid(6248)) }, Fingerprint { range: Range(631, 763), fp: EncodedCountingMonoid(11, SumMonoid(7827)) }, Fingerprint { range: Range(763, 866), fp: EncodedCountingMonoid(12, SumMonoid(9906)) }, Fingerprint { range: Range(866, 995), fp: EncodedCountingMonoid(11, SumMonoid(10049)) }], item_sets: [], wants: [], provide: [(997, true), (3, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 114), fp: EncodedCountingMonoid(7, SumMonoid(533)) }, Fingerprint { range: Range(114, 154), fp: EncodedCountingMonoid(7, SumMonoid(924)) }, Fingerprint { range: Range(255, 309), fp: EncodedCountingMonoid(4, SumMonoid(1110)) }, Fingerprint { range: Range(309, 343), fp: EncodedCountingMonoid(3, SumMonoid(967)) }, Fingerprint { range: Range(343, 400), fp: EncodedCountingMonoid(5, SumMonoid(1856)) }, Fingerprint { range: Range(400, 432), fp: EncodedCountingMonoid(5, SumMonoid(2051)) }, Fingerprint { range: Range(432, 537), fp: EncodedCountingMonoid(7, SumMonoid(3620)) }, Fingerprint { range: Range(537, 631), fp: EncodedCountingMonoid(7, SumMonoid(4073)) }, Fingerprint { range: Range(631, 700), fp: EncodedCountingMonoid(5, SumMonoid(3267)) }, Fingerprint { range: Range(700, 763), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(763, 788), fp: EncodedCountingMonoid(6, SumMonoid(4626)) }, Fingerprint { range: Range(788, 866), fp: EncodedCountingMonoid(5, SumMonoid(4017)) }, Fingerprint { range: Range(866, 926), fp: EncodedCountingMonoid(6, SumMonoid(5453)) }, Fingerprint { range: Range(926, 995), fp: EncodedCountingMonoid(6, SumMonoid(5789)) }], item_sets: [ItemSet { range: Range(154, 235), items: [159, 165], want_response: true }, ItemSet { range: Range(235, 255), items: [235], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(18, 60), fp: EncodedCountingMonoid(5, SumMonoid(213)) }, Fingerprint { range: Range(60, 114), fp: EncodedCountingMonoid(5, SumMonoid(411)) }, Fingerprint { range: Range(114, 143), fp: EncodedCountingMonoid(3, SumMonoid(388)) }, Fingerprint { range: Range(255, 288), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(343, 374), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(374, 400), fp: EncodedCountingMonoid(3, SumMonoid(1147)) }, Fingerprint { range: Range(432, 483), fp: EncodedCountingMonoid(3, SumMonoid(1355)) }, Fingerprint { range: Range(483, 537), fp: EncodedCountingMonoid(3, SumMonoid(1492)) }, Fingerprint { range: Range(537, 560), fp: EncodedCountingMonoid(3, SumMonoid(1646)) }, Fingerprint { range: Range(560, 631), fp: EncodedCountingMonoid(3, SumMonoid(1755)) }, Fingerprint { range: Range(700, 746), fp: EncodedCountingMonoid(4, SumMonoid(2946)) }, Fingerprint { range: Range(746, 763), fp: EncodedCountingMonoid(3, SumMonoid(2258)) }, Fingerprint { range: Range(788, 833), fp: EncodedCountingMonoid(6, SumMonoid(4875)) }, Fingerprint { range: Range(833, 866), fp: EncodedCountingMonoid(5, SumMonoid(4255)) }, Fingerprint { range: Range(866, 883), fp: EncodedCountingMonoid(3, SumMonoid(2615)) }, Fingerprint { range: Range(883, 926), fp: EncodedCountingMonoid(3, SumMonoid(2707)) }, Fingerprint { range: Range(926, 945), fp: EncodedCountingMonoid(3, SumMonoid(2806)) }], item_sets: [ItemSet { range: Range(154, 235), items: [154, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230], want_response: false }, ItemSet { range: Range(235, 255), items: [240, 246, 252], want_response: false }, ItemSet { range: Range(143, 154), items: [143, 151], want_response: true }, ItemSet { range: Range(288, 309), items: [288, 296], want_response: true }, ItemSet { range: Range(309, 342), items: [316, 338], want_response: true }, ItemSet { range: Range(342, 343), items: [342], want_response: true }, ItemSet { range: Range(400, 432), items: [400, 427], want_response: true }, ItemSet { range: Range(631, 650), items: [631, 646], want_response: true }, ItemSet { range: Range(650, 700), items: [650, 696], want_response: true }, ItemSet { range: Range(763, 788), items: [776], want_response: true }, ItemSet { range: Range(945, 995), items: [945, 976], want_response: true }], wants: [159, 165, 235], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(60, 107), fp: EncodedCountingMonoid(3, SumMonoid(249)) }, Fingerprint { range: Range(114, 126), fp: EncodedCountingMonoid(3, SumMonoid(359)) }, Fingerprint { range: Range(483, 527), fp: EncodedCountingMonoid(4, SumMonoid(2029)) }, Fingerprint { range: Range(527, 537), fp: EncodedCountingMonoid(3, SumMonoid(1591)) }, Fingerprint { range: Range(560, 610), fp: EncodedCountingMonoid(3, SumMonoid(1746)) }, Fingerprint { range: Range(883, 921), fp: EncodedCountingMonoid(3, SumMonoid(2739)) }], item_sets: [ItemSet { range: Range(143, 154), items: [147, 150], want_response: false }, ItemSet { range: Range(288, 309), items: [293, 295], want_response: false }, ItemSet { range: Range(309, 342), items: [309, 328, 330], want_response: false }, ItemSet { range: Range(342, 343), items: [], want_response: false }, ItemSet { range: Range(400, 432), items: [400, 403, 406, 415, 427], want_response: false }, ItemSet { range: Range(631, 650), items: [632, 633, 647], want_response: false }, ItemSet { range: Range(650, 700), items: [673, 682], want_response: false }, ItemSet { range: Range(763, 788), items: [763, 768, 769, 772, 774, 780], want_response: false }, ItemSet { range: Range(945, 995), items: [971, 978, 986, 994], want_response: false }, ItemSet { range: Range(18, 60), items: [18, 49], want_response: true }, ItemSet { range: Range(107, 114), items: [107, 110], want_response: true }, ItemSet { range: Range(126, 143), items: [126, 142], want_response: true }, ItemSet { range: Range(255, 288), items: [255, 267], want_response: true }, ItemSet { range: Range(343, 363), items: [358, 361], want_response: true }, ItemSet { range: Range(363, 374), items: [363], want_response: true }, ItemSet { range: Range(374, 400), items: [379, 395], want_response: true }, ItemSet { range: Range(432, 483), items: [], want_response: true }, ItemSet { range: Range(537, 560), items: [537, 552], want_response: true }, ItemSet { range: Range(610, 631), items: [610, 628], want_response: true }, ItemSet { range: Range(700, 742), items: [700, 707], want_response: true }, ItemSet { range: Range(742, 746), items: [742], want_response: true }, ItemSet { range: Range(746, 763), items: [756], want_response: true }, ItemSet { range: Range(788, 799), items: [788, 794], want_response: true }, ItemSet { range: Range(799, 833), items: [799, 802], want_response: true }, ItemSet { range: Range(833, 866), items: [834], want_response: true }, ItemSet { range: Range(866, 883), items: [871], want_response: true }, ItemSet { range: Range(921, 926), items: [921, 922], want_response: true }, ItemSet { range: Range(926, 945), items: [926, 934], want_response: true }], wants: [154, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230, 240, 246, 252, 143, 151, 288, 296, 316, 338, 342, 631, 646, 650, 696, 776, 945, 976], provide: [(159, true), (165, true), (235, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(18, 60), items: [28, 40, 45, 49, 51], want_response: false }, ItemSet { range: Range(107, 114), items: [113], want_response: false }, ItemSet { range: Range(126, 143), items: [133, 137], want_response: false }, ItemSet { range: Range(255, 288), items: [259, 269, 277], want_response: false }, ItemSet { range: Range(343, 363), items: [343, 355, 360], want_response: false }, ItemSet { range: Range(363, 374), items: [], want_response: false }, ItemSet { range: Range(374, 400), items: [374, 386, 387], want_response: false }, ItemSet { range: Range(432, 483), items: [432, 451, 472], want_response: false }, ItemSet { range: Range(537, 560), items: [540, 547, 559], want_response: false }, ItemSet { range: Range(610, 631), items: [629], want_response: false }, ItemSet { range: Range(700, 742), items: [728, 734, 741], want_response: false }, ItemSet { range: Range(742, 746), items: [743], want_response: false }, ItemSet { range: Range(746, 763), items: [746, 751, 761], want_response: false }, ItemSet { range: Range(788, 799), items: [791, 797], want_response: false }, ItemSet { range: Range(799, 833), items: [811, 822, 825, 829], want_response: false }, ItemSet { range: Range(833, 866), items: [833, 843, 855, 859, 865], want_response: false }, ItemSet { range: Range(866, 883), items: [866, 873, 876], want_response: false }, ItemSet { range: Range(921, 926), items: [], want_response: false }, ItemSet { range: Range(926, 945), items: [933, 935, 938], want_response: false }, ItemSet { range: Range(60, 83), items: [60, 71], want_response: true }, ItemSet { range: Range(83, 107), items: [83, 84], want_response: true }, ItemSet { range: Range(114, 126), items: [118], want_response: true }, ItemSet { range: Range(483, 508), items: [483, 501], want_response: true }, ItemSet { range: Range(508, 527), items: [508], want_response: true }, ItemSet { range: Range(527, 537), items: [], want_response: true }, ItemSet { range: Range(560, 610), items: [560, 566], want_response: true }, ItemSet { range: Range(883, 918), items: [883, 906], want_response: true }, ItemSet { range: Range(918, 921), items: [918], want_response: true }], wants: [147, 150, 293, 295, 309, 328, 330, 403, 406, 415, 632, 633, 647, 673, 682, 763, 768, 769, 772, 774, 780, 971, 978, 986, 994, 18, 107, 110, 126, 142, 255, 267, 358, 361, 363, 379, 395, 537, 552, 610, 628, 700, 707, 742, 756, 788, 794, 799, 802, 834, 871, 921, 922, 926, 934], provide: [(154, true), (172, true), (177, true), (178, true), (183, true), (187, true), (190, true), (213, true), (219, true), (224, true), (225, true), (230, true), (240, true), (246, true), (252, true), (143, true), (151, true), (288, true), (296, true), (316, true), (338, true), (342, true), (631, true), (646, true), (650, true), (696, true), (776, true), (945, true), (976, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(60, 83), items: [73, 74], want_response: false }, ItemSet { range: Range(83, 107), items: [102], want_response: false }, ItemSet { range: Range(114, 126), items: [114, 120, 125], want_response: false }, ItemSet { range: Range(483, 508), items: [491, 502], want_response: false }, ItemSet { range: Range(508, 527), items: [515, 521], want_response: false }, ItemSet { range: Range(527, 537), items: [527, 530, 534], want_response: false }, ItemSet { range: Range(560, 610), items: [566, 583, 597], want_response: false }, ItemSet { range: Range(883, 918), items: [906, 913], want_response: false }, ItemSet { range: Range(918, 921), items: [920], want_response: false }], wants: [28, 40, 45, 51, 113, 133, 137, 259, 269, 277, 343, 355, 360, 374, 386, 387, 432, 451, 472, 540, 547, 559, 629, 728, 734, 741, 743, 746, 751, 761, 791, 797, 811, 822, 825, 829, 833, 843, 855, 859, 865, 866, 873, 876, 933, 935, 938, 60, 71, 83, 84, 118, 483, 501, 508, 560, 883, 918], provide: [(147, true), (150, true), (293, true), (295, true), (309, true), (328, true), (330, true), (403, true), (406, true), (415, true), (632, true), (633, true), (647, true), (673, true), (682, true), (763, true), (768, true), (769, true), (772, true), (774, true), (780, true), (971, true), (978, true), (986, true), (994, true), (18, true), (107, true), (110, true), (126, true), (142, true), (255, true), (267, true), (358, true), (361, true), (363, true), (379, true), (395, true), (537, true), (552, true), (610, true), (628, true), (700, true), (707, true), (742, true), (756, true), (788, true), (794, true), (799, true), (802, true), (834, true), (871, true), (921, true), (922, true), (926, true), (934, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [73, 74, 102, 114, 120, 125, 491, 502, 515, 521, 527, 530, 534, 583, 597, 913, 920], provide: [(28, true), (40, true), (45, true), (51, true), (113, true), (133, true), (137, true), (259, true), (269, true), (277, true), (343, true), (355, true), (360, true), (374, true), (386, true), (387, true), (432, true), (451, true), (472, true), (540, true), (547, true), (559, true), (629, true), (728, true), (734, true), (741, true), (743, true), (746, true), (751, true), (761, true), (791, true), (797, true), (811, true), (822, true), (825, true), (829, true), (833, true), (843, true), (855, true), (859, true), (865, true), (866, true), (873, true), (876, true), (933, true), (935, true), (938, true), (60, true), (71, true), (83, true), (84, true), (118, true), (483, true), (501, true), (508, true), (560, true), (883, true), (918, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(73, true), (74, true), (102, true), (114, true), (120, true), (125, true), (491, true), (502, true), (515, true), (521, true), (527, true), (530, true), (534, true), (583, true), (597, true), (913, true), (920, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {18, 49, 73, 74, 102, 107, 110, 114, 120, 125, 126, 142, 147, 150, 159, 165, 235, 255, 267, 293, 295, 309, 328, 330, 358, 361, 363, 379, 395, 400, 403, 406, 415, 427, 491, 502, 515, 521, 527, 530, 534, 537, 552, 566, 583, 597, 610, 628, 632, 633, 647, 673, 682, 700, 707, 742, 756, 763, 768, 769, 772, 774, 780, 788, 794, 799, 802, 834, 871, 906, 913, 920, 921, 922, 926, 934, 971, 978, 986, 994} + [997, 3, 154, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230, 240, 246, 252, 143, 151, 288, 296, 316, 338, 342, 631, 646, 650, 696, 776, 945, 976, 28, 40, 45, 51, 113, 133, 137, 259, 269, 277, 343, 355, 360, 374, 386, 387, 432, 451, 472, 540, 547, 559, 629, 728, 734, 741, 743, 746, 751, 761, 791, 797, 811, 822, 825, 829, 833, 843, 855, 859, 865, 866, 873, 876, 933, 935, 938, 60, 71, 83, 84, 118, 483, 501, 508, 560, 883, 918]
[INFO] [stdout] b all: {3, 28, 40, 45, 49, 51, 60, 71, 83, 84, 113, 118, 133, 137, 143, 151, 154, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230, 240, 246, 252, 259, 269, 277, 288, 296, 316, 338, 342, 343, 355, 360, 374, 386, 387, 400, 427, 432, 451, 472, 483, 501, 508, 540, 547, 559, 560, 566, 629, 631, 646, 650, 696, 728, 734, 741, 743, 746, 751, 761, 776, 791, 797, 811, 822, 825, 829, 833, 843, 855, 859, 865, 866, 873, 876, 883, 906, 918, 933, 935, 938, 945, 976, 997} + [159, 165, 235, 147, 150, 293, 295, 309, 328, 330, 403, 406, 415, 632, 633, 647, 673, 682, 763, 768, 769, 772, 774, 780, 971, 978, 986, 994, 18, 107, 110, 126, 142, 255, 267, 358, 361, 363, 379, 395, 537, 552, 610, 628, 700, 707, 742, 756, 788, 794, 799, 802, 834, 871, 921, 922, 926, 934, 73, 74, 102, 114, 120, 125, 491, 502, 515, 521, 527, 530, 534, 583, 597, 913, 920]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 18, 28, 40, 45, 49, 51, 60, 71, 73, 74, 83, 84, 102, 107, 110, 113, 114, 118, 120, 125, 126, 133, 137, 142, 143, 147, 150, 151, 154, 159, 165, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230, 235, 240, 246, 252, 255, 259, 267, 269, 277, 288, 293, 295, 296, 309, 316, 328, 330, 338, 342, 343, 355, 358, 360, 361, 363, 374, 379, 386, 387, 395, 400, 403, 406, 415, 427, 432, 451, 472, 483, 491, 501, 502, 508, 515, 521, 527, 530, 534, 537, 540, 547, 552, 559, 560, 566, 583, 597, 610, 628, 629, 631, 632, 633, 646, 647, 650, 673, 682, 696, 700, 707, 728, 734, 741, 742, 743, 746, 751, 756, 761, 763, 768, 769, 772, 774, 776, 780, 788, 791, 794, 797, 799, 802, 811, 822, 825, 829, 833, 834, 843, 855, 859, 865, 866, 871, 873, 876, 883, 906, 913, 918, 920, 921, 922, 926, 933, 934, 935, 938, 945, 971, 976, 978, 986, 994, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 18, 28, 40, 45, 49, 51, 60, 71, 73, 74, 83, 84, 102, 107, 110, 113, 114, 118, 120, 125, 126, 133, 137, 142, 143, 147, 150, 151, 154, 159, 165, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230, 235, 240, 246, 252, 255, 259, 267, 269, 277, 288, 293, 295, 296, 309, 316, 328, 330, 338, 342, 343, 355, 358, 360, 361, 363, 374, 379, 386, 387, 395, 400, 403, 406, 415, 427, 432, 451, 472, 483, 491, 501, 502, 508, 515, 521, 527, 530, 534, 537, 540, 547, 552, 559, 560, 566, 583, 597, 610, 628, 629, 631, 632, 633, 646, 647, 650, 673, 682, 696, 700, 707, 728, 734, 741, 742, 743, 746, 751, 756, 761, 763, 768, 769, 772, 774, 776, 780, 788, 791, 794, 797, 799, 802, 811, 822, 825, 829, 833, 834, 843, 855, 859, 865, 866, 871, 873, 876, 883, 906, 913, 918, 920, 921, 922, 926, 933, 934, 935, 938, 945, 971, 976, 978, 986, 994, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 18, 28, 40, 45, 49, 51, 60, 71, 73, 74, 83, 84, 102, 107, 110, 113, 114, 118, 120, 125, 126, 133, 137, 142, 143, 147, 150, 151, 154, 159, 165, 172, 177, 178, 183, 187, 190, 213, 219, 224, 225, 230, 235, 240, 246, 252, 255, 259, 267, 269, 277, 288, 293, 295, 296, 309, 316, 328, 330, 338, 342, 343, 355, 358, 360, 361, 363, 374, 379, 386, 387, 395, 400, 403, 406, 415, 427, 432, 451, 472, 483, 491, 501, 502, 508, 515, 521, 527, 530, 534, 537, 540, 547, 552, 559, 560, 566, 583, 597, 610, 628, 629, 631, 632, 633, 646, 647, 650, 673, 682, 696, 700, 707, 728, 734, 741, 742, 743, 746, 751, 756, 761, 763, 768, 769, 772, 774, 776, 780, 788, 791, 794, 797, 799, 802, 811, 822, 825, 829, 833, 834, 843, 855, 859, 865, 866, 871, 873, 876, 883, 906, 913, 918, 920, 921, 922, 926, 933, 934, 935, 938, 945, 971, 976, 978, 986, 994, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {10, 17, 66, 106, 390, 405, 430, 452, 532, 542, 546, 607, 630, 644, 657, 659, 707, 727, 788, 889, 968}
[INFO] [stdout] b items: {16, 17, 21, 38, 45, 55, 68, 69, 93, 101, 118, 123, 124, 129, 134, 148, 180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354, 390, 397, 479, 490, 521, 533, 535, 536, 538, 553, 569, 578, 599, 620, 635, 636, 651, 668, 682, 690, 728, 754, 762, 769, 842, 867, 877, 887, 897, 901, 902, 912, 929, 933, 946, 961, 971, 975}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 969), fp: EncodedCountingMonoid(21, SumMonoid(10772)) }], item_sets: [ItemSet { range: Range(969, 10), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 490), fp: EncodedCountingMonoid(34, SumMonoid(6682)) }, Fingerprint { range: Range(490, 969), fp: EncodedCountingMonoid(33, SumMonoid(23901)) }], item_sets: [ItemSet { range: Range(969, 10), items: [971, 975], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 390), fp: EncodedCountingMonoid(4, SumMonoid(199)) }, Fingerprint { range: Range(390, 490), fp: EncodedCountingMonoid(4, SumMonoid(1677)) }, Fingerprint { range: Range(490, 659), fp: EncodedCountingMonoid(7, SumMonoid(4158)) }, Fingerprint { range: Range(659, 969), fp: EncodedCountingMonoid(6, SumMonoid(4738)) }], item_sets: [], wants: [971, 975], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 180), fp: EncodedCountingMonoid(16, SumMonoid(1299)) }, Fingerprint { range: Range(180, 390), fp: EncodedCountingMonoid(15, SumMonoid(4117)) }, Fingerprint { range: Range(490, 569), fp: EncodedCountingMonoid(7, SumMonoid(3706)) }, Fingerprint { range: Range(569, 659), fp: EncodedCountingMonoid(7, SumMonoid(4288)) }, Fingerprint { range: Range(659, 887), fp: EncodedCountingMonoid(10, SumMonoid(7639)) }, Fingerprint { range: Range(887, 969), fp: EncodedCountingMonoid(9, SumMonoid(8268)) }], item_sets: [ItemSet { range: Range(390, 479), items: [390, 397], want_response: true }, ItemSet { range: Range(479, 490), items: [479], want_response: true }], wants: [], provide: [(971, true), (975, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(390, 479), items: [390, 405, 430, 452], want_response: false }, ItemSet { range: Range(479, 490), items: [], want_response: false }, ItemSet { range: Range(10, 66), items: [10, 17], want_response: true }, ItemSet { range: Range(66, 180), items: [66, 106], want_response: true }, ItemSet { range: Range(180, 390), items: [], want_response: true }, ItemSet { range: Range(490, 546), items: [532, 542], want_response: true }, ItemSet { range: Range(546, 569), items: [546], want_response: true }, ItemSet { range: Range(569, 644), items: [607, 630], want_response: true }, ItemSet { range: Range(644, 659), items: [644, 657], want_response: true }, ItemSet { range: Range(659, 727), items: [659, 707], want_response: true }, ItemSet { range: Range(727, 887), items: [727, 788], want_response: true }, ItemSet { range: Range(887, 969), items: [889, 968], want_response: true }], wants: [397, 479], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(10, 66), items: [16, 17, 21, 38, 45, 55], want_response: false }, ItemSet { range: Range(66, 180), items: [68, 69, 93, 101, 118, 123, 124, 129, 134, 148], want_response: false }, ItemSet { range: Range(180, 390), items: [180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354], want_response: false }, ItemSet { range: Range(490, 546), items: [490, 521, 533, 535, 536, 538], want_response: false }, ItemSet { range: Range(546, 569), items: [553], want_response: false }, ItemSet { range: Range(569, 644), items: [569, 578, 599, 620, 635, 636], want_response: false }, ItemSet { range: Range(644, 659), items: [651], want_response: false }, ItemSet { range: Range(659, 727), items: [668, 682, 690], want_response: false }, ItemSet { range: Range(727, 887), items: [728, 754, 762, 769, 842, 867, 877], want_response: false }, ItemSet { range: Range(887, 969), items: [887, 897, 901, 902, 912, 929, 933, 946, 961], want_response: false }], wants: [405, 430, 452, 10, 66, 106, 532, 542, 546, 607, 630, 644, 657, 659, 707, 727, 788, 889, 968], provide: [(397, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [16, 21, 38, 45, 55, 68, 69, 93, 101, 118, 123, 124, 129, 134, 148, 180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354, 490, 521, 533, 535, 536, 538, 553, 569, 578, 599, 620, 635, 636, 651, 668, 682, 690, 728, 754, 762, 769, 842, 867, 877, 887, 897, 901, 902, 912, 929, 933, 946, 961], provide: [(405, true), (430, true), (452, true), (10, true), (66, true), (106, true), (532, true), (542, true), (546, true), (607, true), (630, true), (644, true), (657, true), (659, true), (707, true), (727, true), (788, true), (889, true), (968, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(16, true), (21, true), (38, true), (45, true), (55, true), (68, true), (69, true), (93, true), (101, true), (118, true), (123, true), (124, true), (129, true), (134, true), (148, true), (180, true), (189, true), (194, true), (219, true), (239, true), (260, true), (281, true), (284, true), (290, true), (298, true), (316, true), (331, true), (335, true), (347, true), (354, true), (490, true), (521, true), (533, true), (535, true), (536, true), (538, true), (553, true), (569, true), (578, true), (599, true), (620, true), (635, true), (636, true), (651, true), (668, true), (682, true), (690, true), (728, true), (754, true), (762, true), (769, true), (842, true), (867, true), (877, true), (887, true), (897, true), (901, true), (902, true), (912, true), (929, true), (933, true), (946, true), (961, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {10, 17, 66, 106, 390, 405, 430, 452, 532, 542, 546, 607, 630, 644, 657, 659, 707, 727, 788, 889, 968} + [971, 975, 397, 479, 16, 21, 38, 45, 55, 68, 69, 93, 101, 118, 123, 124, 129, 134, 148, 180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354, 490, 521, 533, 535, 536, 538, 553, 569, 578, 599, 620, 635, 636, 651, 668, 682, 690, 728, 754, 762, 769, 842, 867, 877, 887, 897, 901, 902, 912, 929, 933, 946, 961]
[INFO] [stdout] b all: {16, 17, 21, 38, 45, 55, 68, 69, 93, 101, 118, 123, 124, 129, 134, 148, 180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354, 390, 397, 479, 490, 521, 533, 535, 536, 538, 553, 569, 578, 599, 620, 635, 636, 651, 668, 682, 690, 728, 754, 762, 769, 842, 867, 877, 887, 897, 901, 902, 912, 929, 933, 946, 961, 971, 975} + [405, 430, 452, 10, 66, 106, 532, 542, 546, 607, 630, 644, 657, 659, 707, 727, 788, 889, 968]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 16, 17, 21, 38, 45, 55, 66, 68, 69, 93, 101, 106, 118, 123, 124, 129, 134, 148, 180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354, 390, 397, 405, 430, 452, 479, 490, 521, 532, 533, 535, 536, 538, 542, 546, 553, 569, 578, 599, 607, 620, 630, 635, 636, 644, 651, 657, 659, 668, 682, 690, 707, 727, 728, 754, 762, 769, 788, 842, 867, 877, 887, 889, 897, 901, 902, 912, 929, 933, 946, 961, 968, 971, 975]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 16, 17, 21, 38, 45, 55, 66, 68, 69, 93, 101, 106, 118, 123, 124, 129, 134, 148, 180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354, 390, 397, 405, 430, 452, 479, 490, 521, 532, 533, 535, 536, 538, 542, 546, 553, 569, 578, 599, 607, 620, 630, 635, 636, 644, 651, 657, 659, 668, 682, 690, 707, 727, 728, 754, 762, 769, 788, 842, 867, 877, 887, 889, 897, 901, 902, 912, 929, 933, 946, 961, 968, 971, 975], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 16, 17, 21, 38, 45, 55, 66, 68, 69, 93, 101, 106, 118, 123, 124, 129, 134, 148, 180, 189, 194, 219, 239, 260, 281, 284, 290, 298, 316, 331, 335, 347, 354, 390, 397, 405, 430, 452, 479, 490, 521, 532, 533, 535, 536, 538, 542, 546, 553, 569, 578, 599, 607, 620, 630, 635, 636, 644, 651, 657, 659, 668, 682, 690, 707, 727, 728, 754, 762, 769, 788, 842, 867, 877, 887, 889, 897, 901, 902, 912, 929, 933, 946, 961, 968, 971, 975], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {74, 77, 123, 125, 164, 184, 190, 227, 234, 243, 247, 265, 285, 293, 307, 312, 430, 434, 472, 486, 558, 566, 577, 582, 595, 674, 705, 733, 736, 759, 764, 767, 788, 807, 819, 855, 907, 919, 926, 927, 936, 956, 975, 987}
[INFO] [stdout] b items: {5, 23, 30, 38, 42, 53, 61, 68, 108, 116, 120, 157, 173, 176, 234, 256, 320, 321, 325, 336, 340, 349, 361, 362, 418, 424, 433, 443, 444, 452, 470, 487, 490, 497, 528, 531, 538, 541, 553, 556, 557, 576, 580, 586, 587, 605, 621, 631, 637, 641, 662, 682, 695, 698, 713, 719, 720, 729, 742, 770, 773, 780, 787, 850, 851, 866, 867, 874, 882, 933, 952, 954, 961, 962, 977, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(74, 988), fp: EncodedCountingMonoid(44, SumMonoid(23990)) }], item_sets: [ItemSet { range: Range(988, 74), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(74, 580), fp: EncodedCountingMonoid(34, SumMonoid(12992)) }, Fingerprint { range: Range(580, 988), fp: EncodedCountingMonoid(33, SumMonoid(25287)) }], item_sets: [ItemSet { range: Range(988, 74), items: [999, 5, 23, 30, 38, 42, 53, 61, 68], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(74, 285), fp: EncodedCountingMonoid(12, SumMonoid(2153)) }, Fingerprint { range: Range(285, 580), fp: EncodedCountingMonoid(11, SumMonoid(4720)) }, Fingerprint { range: Range(580, 819), fp: EncodedCountingMonoid(11, SumMonoid(7910)) }, Fingerprint { range: Range(819, 988), fp: EncodedCountingMonoid(10, SumMonoid(9207)) }], item_sets: [], wants: [999, 5, 23, 30, 38, 42, 53, 61, 68], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(74, 173), fp: EncodedCountingMonoid(4, SumMonoid(501)) }, Fingerprint { range: Range(173, 285), fp: EncodedCountingMonoid(4, SumMonoid(839)) }, Fingerprint { range: Range(285, 452), fp: EncodedCountingMonoid(13, SumMonoid(4876)) }, Fingerprint { range: Range(452, 580), fp: EncodedCountingMonoid(13, SumMonoid(6776)) }, Fingerprint { range: Range(580, 698), fp: EncodedCountingMonoid(11, SumMonoid(6927)) }, Fingerprint { range: Range(698, 819), fp: EncodedCountingMonoid(10, SumMonoid(7431)) }, Fingerprint { range: Range(819, 933), fp: EncodedCountingMonoid(6, SumMonoid(5190)) }, Fingerprint { range: Range(933, 988), fp: EncodedCountingMonoid(6, SumMonoid(5739)) }], item_sets: [], wants: [], provide: [(999, true), (5, true), (23, true), (30, true), (38, true), (42, true), (53, true), (61, true), (68, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(74, 125), fp: EncodedCountingMonoid(3, SumMonoid(274)) }, Fingerprint { range: Range(173, 243), fp: EncodedCountingMonoid(4, SumMonoid(835)) }, Fingerprint { range: Range(243, 285), fp: EncodedCountingMonoid(3, SumMonoid(755)) }, Fingerprint { range: Range(285, 312), fp: EncodedCountingMonoid(3, SumMonoid(885)) }, Fingerprint { range: Range(312, 452), fp: EncodedCountingMonoid(3, SumMonoid(1176)) }, Fingerprint { range: Range(452, 566), fp: EncodedCountingMonoid(3, SumMonoid(1516)) }, Fingerprint { range: Range(698, 764), fp: EncodedCountingMonoid(4, SumMonoid(2933)) }, Fingerprint { range: Range(764, 819), fp: EncodedCountingMonoid(4, SumMonoid(3126)) }, Fingerprint { range: Range(819, 919), fp: EncodedCountingMonoid(3, SumMonoid(2581)) }, Fingerprint { range: Range(919, 933), fp: EncodedCountingMonoid(3, SumMonoid(2772)) }], item_sets: [ItemSet { range: Range(125, 173), items: [125, 164], want_response: true }, ItemSet { range: Range(566, 580), items: [566, 577], want_response: true }, ItemSet { range: Range(580, 674), items: [582, 595], want_response: true }, ItemSet { range: Range(674, 698), items: [674], want_response: true }, ItemSet { range: Range(933, 975), items: [936, 956], want_response: true }, ItemSet { range: Range(975, 988), items: [975, 987], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(312, 362), fp: EncodedCountingMonoid(7, SumMonoid(2352)) }, Fingerprint { range: Range(362, 452), fp: EncodedCountingMonoid(6, SumMonoid(2524)) }, Fingerprint { range: Range(452, 531), fp: EncodedCountingMonoid(6, SumMonoid(2924)) }, Fingerprint { range: Range(531, 566), fp: EncodedCountingMonoid(6, SumMonoid(3276)) }, Fingerprint { range: Range(698, 720), fp: EncodedCountingMonoid(3, SumMonoid(2130)) }, Fingerprint { range: Range(720, 764), fp: EncodedCountingMonoid(3, SumMonoid(2191)) }, Fingerprint { range: Range(819, 867), fp: EncodedCountingMonoid(3, SumMonoid(2567)) }, Fingerprint { range: Range(867, 919), fp: EncodedCountingMonoid(3, SumMonoid(2623)) }], item_sets: [ItemSet { range: Range(125, 173), items: [157], want_response: false }, ItemSet { range: Range(566, 580), items: [576], want_response: false }, ItemSet { range: Range(580, 674), items: [580, 586, 587, 605, 621, 631, 637, 641, 662], want_response: false }, ItemSet { range: Range(674, 698), items: [682, 695], want_response: false }, ItemSet { range: Range(933, 975), items: [933, 952, 954, 961, 962], want_response: false }, ItemSet { range: Range(975, 988), items: [977], want_response: false }, ItemSet { range: Range(74, 120), items: [108, 116], want_response: true }, ItemSet { range: Range(120, 125), items: [120], want_response: true }, ItemSet { range: Range(173, 234), items: [173, 176], want_response: true }, ItemSet { range: Range(234, 243), items: [234], want_response: true }, ItemSet { range: Range(243, 285), items: [256], want_response: true }, ItemSet { range: Range(285, 312), items: [], want_response: true }, ItemSet { range: Range(764, 780), items: [770, 773], want_response: true }, ItemSet { range: Range(780, 819), items: [780, 787], want_response: true }, ItemSet { range: Range(919, 933), items: [], want_response: true }], wants: [125, 164, 566, 577, 582, 595, 674, 936, 956, 975, 987], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(74, 120), items: [74, 77], want_response: false }, ItemSet { range: Range(120, 125), items: [123], want_response: false }, ItemSet { range: Range(173, 234), items: [184, 190, 227], want_response: false }, ItemSet { range: Range(234, 243), items: [234], want_response: false }, ItemSet { range: Range(243, 285), items: [243, 247, 265], want_response: false }, ItemSet { range: Range(285, 312), items: [285, 293, 307], want_response: false }, ItemSet { range: Range(764, 780), items: [764, 767], want_response: false }, ItemSet { range: Range(780, 819), items: [788, 807], want_response: false }, ItemSet { range: Range(919, 933), items: [919, 926, 927], want_response: false }, ItemSet { range: Range(312, 362), items: [312], want_response: true }, ItemSet { range: Range(362, 452), items: [430, 434], want_response: true }, ItemSet { range: Range(452, 531), items: [472, 486], want_response: true }, ItemSet { range: Range(531, 566), items: [558], want_response: true }, ItemSet { range: Range(698, 720), items: [705], want_response: true }, ItemSet { range: Range(720, 759), items: [733, 736], want_response: true }, ItemSet { range: Range(759, 764), items: [759], want_response: true }, ItemSet { range: Range(819, 867), items: [819, 855], want_response: true }, ItemSet { range: Range(867, 919), items: [907], want_response: true }], wants: [157, 576, 580, 586, 587, 605, 621, 631, 637, 641, 662, 682, 695, 933, 952, 954, 961, 962, 977, 108, 116, 120, 173, 176, 256, 770, 773, 780, 787], provide: [(125, true), (164, true), (566, true), (577, true), (582, true), (595, true), (674, true), (936, true), (956, true), (975, true), (987, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(312, 362), items: [320, 321, 325, 336, 340, 349, 361], want_response: false }, ItemSet { range: Range(362, 452), items: [362, 418, 424, 433, 443, 444], want_response: false }, ItemSet { range: Range(452, 531), items: [452, 470, 487, 490, 497, 528], want_response: false }, ItemSet { range: Range(531, 566), items: [531, 538, 541, 553, 556, 557], want_response: false }, ItemSet { range: Range(698, 720), items: [698, 713, 719], want_response: false }, ItemSet { range: Range(720, 759), items: [720, 729, 742], want_response: false }, ItemSet { range: Range(759, 764), items: [], want_response: false }, ItemSet { range: Range(819, 867), items: [850, 851, 866], want_response: false }, ItemSet { range: Range(867, 919), items: [867, 874, 882], want_response: false }], wants: [74, 77, 123, 184, 190, 227, 243, 247, 265, 285, 293, 307, 764, 767, 788, 807, 919, 926, 927, 312, 430, 434, 472, 486, 558, 705, 733, 736, 759, 819, 855, 907], provide: [(157, true), (576, true), (580, true), (586, true), (587, true), (605, true), (621, true), (631, true), (637, true), (641, true), (662, true), (682, true), (695, true), (933, true), (952, true), (954, true), (961, true), (962, true), (977, true), (108, true), (116, true), (120, true), (173, true), (176, true), (256, true), (770, true), (773, true), (780, true), (787, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [320, 321, 325, 336, 340, 349, 361, 362, 418, 424, 433, 443, 444, 452, 470, 487, 490, 497, 528, 531, 538, 541, 553, 556, 557, 698, 713, 719, 720, 729, 742, 850, 851, 866, 867, 874, 882], provide: [(74, true), (77, true), (123, true), (184, true), (190, true), (227, true), (243, true), (247, true), (265, true), (285, true), (293, true), (307, true), (764, true), (767, true), (788, true), (807, true), (919, true), (926, true), (927, true), (312, true), (430, true), (434, true), (472, true), (486, true), (558, true), (705, true), (733, true), (736, true), (759, true), (819, true), (855, true), (907, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(320, true), (321, true), (325, true), (336, true), (340, true), (349, true), (361, true), (362, true), (418, true), (424, true), (433, true), (443, true), (444, true), (452, true), (470, true), (487, true), (490, true), (497, true), (528, true), (531, true), (538, true), (541, true), (553, true), (556, true), (557, true), (698, true), (713, true), (719, true), (720, true), (729, true), (742, true), (850, true), (851, true), (866, true), (867, true), (874, true), (882, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {74, 77, 123, 125, 164, 184, 190, 227, 234, 243, 247, 265, 285, 293, 307, 312, 430, 434, 472, 486, 558, 566, 577, 582, 595, 674, 705, 733, 736, 759, 764, 767, 788, 807, 819, 855, 907, 919, 926, 927, 936, 956, 975, 987} + [999, 5, 23, 30, 38, 42, 53, 61, 68, 157, 576, 580, 586, 587, 605, 621, 631, 637, 641, 662, 682, 695, 933, 952, 954, 961, 962, 977, 108, 116, 120, 173, 176, 256, 770, 773, 780, 787, 320, 321, 325, 336, 340, 349, 361, 362, 418, 424, 433, 443, 444, 452, 470, 487, 490, 497, 528, 531, 538, 541, 553, 556, 557, 698, 713, 719, 720, 729, 742, 850, 851, 866, 867, 874, 882]
[INFO] [stdout] b all: {5, 23, 30, 38, 42, 53, 61, 68, 108, 116, 120, 157, 173, 176, 234, 256, 320, 321, 325, 336, 340, 349, 361, 362, 418, 424, 433, 443, 444, 452, 470, 487, 490, 497, 528, 531, 538, 541, 553, 556, 557, 576, 580, 586, 587, 605, 621, 631, 637, 641, 662, 682, 695, 698, 713, 719, 720, 729, 742, 770, 773, 780, 787, 850, 851, 866, 867, 874, 882, 933, 952, 954, 961, 962, 977, 999} + [125, 164, 566, 577, 582, 595, 674, 936, 956, 975, 987, 74, 77, 123, 184, 190, 227, 243, 247, 265, 285, 293, 307, 764, 767, 788, 807, 919, 926, 927, 312, 430, 434, 472, 486, 558, 705, 733, 736, 759, 819, 855, 907]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 23, 30, 38, 42, 53, 61, 68, 74, 77, 108, 116, 120, 123, 125, 157, 164, 173, 176, 184, 190, 227, 234, 243, 247, 256, 265, 285, 293, 307, 312, 320, 321, 325, 336, 340, 349, 361, 362, 418, 424, 430, 433, 434, 443, 444, 452, 470, 472, 486, 487, 490, 497, 528, 531, 538, 541, 553, 556, 557, 558, 566, 576, 577, 580, 582, 586, 587, 595, 605, 621, 631, 637, 641, 662, 674, 682, 695, 698, 705, 713, 719, 720, 729, 733, 736, 742, 759, 764, 767, 770, 773, 780, 787, 788, 807, 819, 850, 851, 855, 866, 867, 874, 882, 907, 919, 926, 927, 933, 936, 952, 954, 956, 961, 962, 975, 977, 987, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 23, 30, 38, 42, 53, 61, 68, 74, 77, 108, 116, 120, 123, 125, 157, 164, 173, 176, 184, 190, 227, 234, 243, 247, 256, 265, 285, 293, 307, 312, 320, 321, 325, 336, 340, 349, 361, 362, 418, 424, 430, 433, 434, 443, 444, 452, 470, 472, 486, 487, 490, 497, 528, 531, 538, 541, 553, 556, 557, 558, 566, 576, 577, 580, 582, 586, 587, 595, 605, 621, 631, 637, 641, 662, 674, 682, 695, 698, 705, 713, 719, 720, 729, 733, 736, 742, 759, 764, 767, 770, 773, 780, 787, 788, 807, 819, 850, 851, 855, 866, 867, 874, 882, 907, 919, 926, 927, 933, 936, 952, 954, 956, 961, 962, 975, 977, 987, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 23, 30, 38, 42, 53, 61, 68, 74, 77, 108, 116, 120, 123, 125, 157, 164, 173, 176, 184, 190, 227, 234, 243, 247, 256, 265, 285, 293, 307, 312, 320, 321, 325, 336, 340, 349, 361, 362, 418, 424, 430, 433, 434, 443, 444, 452, 470, 472, 486, 487, 490, 497, 528, 531, 538, 541, 553, 556, 557, 558, 566, 576, 577, 580, 582, 586, 587, 595, 605, 621, 631, 637, 641, 662, 674, 682, 695, 698, 705, 713, 719, 720, 729, 733, 736, 742, 759, 764, 767, 770, 773, 780, 787, 788, 807, 819, 850, 851, 855, 866, 867, 874, 882, 907, 919, 926, 927, 933, 936, 952, 954, 956, 961, 962, 975, 977, 987, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 37, 45, 55, 64, 108, 119, 152, 167, 170, 197, 284, 289, 322, 344, 353, 366, 381, 432, 450, 505, 523, 563, 591, 641, 737, 784, 791, 841, 855, 882, 949, 960, 980, 996}
[INFO] [stdout] b items: {20, 30, 48, 84, 92, 147, 174, 198, 204, 231, 234, 248, 256, 273, 283, 285, 293, 296, 311, 312, 352, 372, 384, 396, 416, 428, 434, 468, 472, 491, 504, 514, 519, 541, 579, 584, 609, 623, 636, 691, 695, 710, 715, 717, 755, 756, 764, 767, 783, 799, 804, 857, 889, 912, 952, 965}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 997), fp: EncodedCountingMonoid(35, SumMonoid(15942)) }], item_sets: [ItemSet { range: Range(997, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 472), fp: EncodedCountingMonoid(28, SumMonoid(7269)) }, Fingerprint { range: Range(472, 997), fp: EncodedCountingMonoid(28, SumMonoid(19603)) }], item_sets: [ItemSet { range: Range(997, 9), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 197), fp: EncodedCountingMonoid(10, SumMonoid(926)) }, Fingerprint { range: Range(197, 472), fp: EncodedCountingMonoid(10, SumMonoid(3418)) }, Fingerprint { range: Range(472, 841), fp: EncodedCountingMonoid(8, SumMonoid(5135)) }, Fingerprint { range: Range(841, 997), fp: EncodedCountingMonoid(7, SumMonoid(6463)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 92), fp: EncodedCountingMonoid(4, SumMonoid(182)) }, Fingerprint { range: Range(92, 197), fp: EncodedCountingMonoid(3, SumMonoid(413)) }, Fingerprint { range: Range(197, 311), fp: EncodedCountingMonoid(11, SumMonoid(2801)) }, Fingerprint { range: Range(311, 472), fp: EncodedCountingMonoid(10, SumMonoid(3873)) }, Fingerprint { range: Range(472, 695), fp: EncodedCountingMonoid(12, SumMonoid(6763)) }, Fingerprint { range: Range(695, 841), fp: EncodedCountingMonoid(11, SumMonoid(8265)) }, Fingerprint { range: Range(841, 952), fp: EncodedCountingMonoid(3, SumMonoid(2658)) }], item_sets: [ItemSet { range: Range(952, 997), items: [952, 965], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 55), fp: EncodedCountingMonoid(3, SumMonoid(91)) }, Fingerprint { range: Range(92, 167), fp: EncodedCountingMonoid(3, SumMonoid(379)) }, Fingerprint { range: Range(311, 381), fp: EncodedCountingMonoid(4, SumMonoid(1385)) }, Fingerprint { range: Range(381, 472), fp: EncodedCountingMonoid(3, SumMonoid(1263)) }, Fingerprint { range: Range(472, 591), fp: EncodedCountingMonoid(3, SumMonoid(1591)) }], item_sets: [ItemSet { range: Range(952, 997), items: [960, 980, 996], want_response: false }, ItemSet { range: Range(55, 92), items: [55, 64], want_response: true }, ItemSet { range: Range(167, 197), items: [167, 170], want_response: true }, ItemSet { range: Range(197, 289), items: [197, 284], want_response: true }, ItemSet { range: Range(289, 311), items: [289], want_response: true }, ItemSet { range: Range(591, 695), items: [591, 641], want_response: true }, ItemSet { range: Range(695, 791), items: [737, 784], want_response: true }, ItemSet { range: Range(791, 841), items: [791], want_response: true }, ItemSet { range: Range(841, 882), items: [841, 855], want_response: true }, ItemSet { range: Range(882, 952), items: [882, 949], want_response: true }], wants: [952, 965], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(381, 428), fp: EncodedCountingMonoid(3, SumMonoid(1196)) }, Fingerprint { range: Range(428, 472), fp: EncodedCountingMonoid(3, SumMonoid(1330)) }, Fingerprint { range: Range(472, 519), fp: EncodedCountingMonoid(4, SumMonoid(1981)) }, Fingerprint { range: Range(519, 591), fp: EncodedCountingMonoid(4, SumMonoid(2223)) }], item_sets: [ItemSet { range: Range(55, 92), items: [84], want_response: false }, ItemSet { range: Range(167, 197), items: [174], want_response: false }, ItemSet { range: Range(197, 289), items: [198, 204, 231, 234, 248, 256, 273, 283, 285], want_response: false }, ItemSet { range: Range(289, 311), items: [293, 296], want_response: false }, ItemSet { range: Range(591, 695), items: [609, 623, 636, 691], want_response: false }, ItemSet { range: Range(695, 791), items: [695, 710, 715, 717, 755, 756, 764, 767, 783], want_response: false }, ItemSet { range: Range(791, 841), items: [799, 804], want_response: false }, ItemSet { range: Range(841, 882), items: [857], want_response: false }, ItemSet { range: Range(882, 952), items: [889, 912], want_response: false }, ItemSet { range: Range(9, 48), items: [20, 30], want_response: true }, ItemSet { range: Range(48, 55), items: [48], want_response: true }, ItemSet { range: Range(92, 167), items: [92, 147], want_response: true }, ItemSet { range: Range(311, 352), items: [311, 312], want_response: true }, ItemSet { range: Range(352, 381), items: [352, 372], want_response: true }], wants: [960, 980, 996, 55, 64, 167, 170, 197, 284, 289, 591, 641, 737, 784, 791, 841, 855, 882, 949], provide: [(952, true), (965, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 48), items: [9, 37, 45], want_response: false }, ItemSet { range: Range(48, 55), items: [], want_response: false }, ItemSet { range: Range(92, 167), items: [108, 119, 152], want_response: false }, ItemSet { range: Range(311, 352), items: [322, 344], want_response: false }, ItemSet { range: Range(352, 381), items: [353, 366], want_response: false }, ItemSet { range: Range(381, 428), items: [381], want_response: true }, ItemSet { range: Range(428, 472), items: [432, 450], want_response: true }, ItemSet { range: Range(472, 519), items: [505], want_response: true }, ItemSet { range: Range(519, 591), items: [523, 563], want_response: true }], wants: [84, 174, 198, 204, 231, 234, 248, 256, 273, 283, 285, 293, 296, 609, 623, 636, 691, 695, 710, 715, 717, 755, 756, 764, 767, 783, 799, 804, 857, 889, 912, 20, 30, 48, 92, 147, 311, 312, 352, 372], provide: [(960, true), (980, true), (996, true), (55, true), (64, true), (167, true), (170, true), (197, true), (284, true), (289, true), (591, true), (641, true), (737, true), (784, true), (791, true), (841, true), (855, true), (882, true), (949, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(381, 428), items: [384, 396, 416], want_response: false }, ItemSet { range: Range(428, 472), items: [428, 434, 468], want_response: false }, ItemSet { range: Range(472, 519), items: [472, 491, 504, 514], want_response: false }, ItemSet { range: Range(519, 591), items: [519, 541, 579, 584], want_response: false }], wants: [9, 37, 45, 108, 119, 152, 322, 344, 353, 366, 381, 432, 450, 505, 523, 563], provide: [(84, true), (174, true), (198, true), (204, true), (231, true), (234, true), (248, true), (256, true), (273, true), (283, true), (285, true), (293, true), (296, true), (609, true), (623, true), (636, true), (691, true), (695, true), (710, true), (715, true), (717, true), (755, true), (756, true), (764, true), (767, true), (783, true), (799, true), (804, true), (857, true), (889, true), (912, true), (20, true), (30, true), (48, true), (92, true), (147, true), (311, true), (312, true), (352, true), (372, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [384, 396, 416, 428, 434, 468, 472, 491, 504, 514, 519, 541, 579, 584], provide: [(9, true), (37, true), (45, true), (108, true), (119, true), (152, true), (322, true), (344, true), (353, true), (366, true), (381, true), (432, true), (450, true), (505, true), (523, true), (563, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(384, true), (396, true), (416, true), (428, true), (434, true), (468, true), (472, true), (491, true), (504, true), (514, true), (519, true), (541, true), (579, true), (584, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 37, 45, 55, 64, 108, 119, 152, 167, 170, 197, 284, 289, 322, 344, 353, 366, 381, 432, 450, 505, 523, 563, 591, 641, 737, 784, 791, 841, 855, 882, 949, 960, 980, 996} + [952, 965, 84, 174, 198, 204, 231, 234, 248, 256, 273, 283, 285, 293, 296, 609, 623, 636, 691, 695, 710, 715, 717, 755, 756, 764, 767, 783, 799, 804, 857, 889, 912, 20, 30, 48, 92, 147, 311, 312, 352, 372, 384, 396, 416, 428, 434, 468, 472, 491, 504, 514, 519, 541, 579, 584]
[INFO] [stdout] b all: {20, 30, 48, 84, 92, 147, 174, 198, 204, 231, 234, 248, 256, 273, 283, 285, 293, 296, 311, 312, 352, 372, 384, 396, 416, 428, 434, 468, 472, 491, 504, 514, 519, 541, 579, 584, 609, 623, 636, 691, 695, 710, 715, 717, 755, 756, 764, 767, 783, 799, 804, 857, 889, 912, 952, 965} + [960, 980, 996, 55, 64, 167, 170, 197, 284, 289, 591, 641, 737, 784, 791, 841, 855, 882, 949, 9, 37, 45, 108, 119, 152, 322, 344, 353, 366, 381, 432, 450, 505, 523, 563]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 20, 30, 37, 45, 48, 55, 64, 84, 92, 108, 119, 147, 152, 167, 170, 174, 197, 198, 204, 231, 234, 248, 256, 273, 283, 284, 285, 289, 293, 296, 311, 312, 322, 344, 352, 353, 366, 372, 381, 384, 396, 416, 428, 432, 434, 450, 468, 472, 491, 504, 505, 514, 519, 523, 541, 563, 579, 584, 591, 609, 623, 636, 641, 691, 695, 710, 715, 717, 737, 755, 756, 764, 767, 783, 784, 791, 799, 804, 841, 855, 857, 882, 889, 912, 949, 952, 960, 965, 980, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 20, 30, 37, 45, 48, 55, 64, 84, 92, 108, 119, 147, 152, 167, 170, 174, 197, 198, 204, 231, 234, 248, 256, 273, 283, 284, 285, 289, 293, 296, 311, 312, 322, 344, 352, 353, 366, 372, 381, 384, 396, 416, 428, 432, 434, 450, 468, 472, 491, 504, 505, 514, 519, 523, 541, 563, 579, 584, 591, 609, 623, 636, 641, 691, 695, 710, 715, 717, 737, 755, 756, 764, 767, 783, 784, 791, 799, 804, 841, 855, 857, 882, 889, 912, 949, 952, 960, 965, 980, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 20, 30, 37, 45, 48, 55, 64, 84, 92, 108, 119, 147, 152, 167, 170, 174, 197, 198, 204, 231, 234, 248, 256, 273, 283, 284, 285, 289, 293, 296, 311, 312, 322, 344, 352, 353, 366, 372, 381, 384, 396, 416, 428, 432, 434, 450, 468, 472, 491, 504, 505, 514, 519, 523, 541, 563, 579, 584, 591, 609, 623, 636, 641, 691, 695, 710, 715, 717, 737, 755, 756, 764, 767, 783, 784, 791, 799, 804, 841, 855, 857, 882, 889, 912, 949, 952, 960, 965, 980, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {19, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 189, 191, 204, 210, 211, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342, 365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987}
[INFO] [stdout] b items: {43, 184, 218, 355, 470}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(19, 988), fp: EncodedCountingMonoid(75, SumMonoid(38191)) }], item_sets: [ItemSet { range: Range(988, 19), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(19, 355), fp: EncodedCountingMonoid(3, SumMonoid(445)) }], item_sets: [ItemSet { range: Range(988, 19), items: [], want_response: false }, ItemSet { range: Range(355, 988), items: [355, 470], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(19, 204), fp: EncodedCountingMonoid(13, SumMonoid(1344)) }, Fingerprint { range: Range(204, 355), fp: EncodedCountingMonoid(13, SumMonoid(3503)) }], item_sets: [ItemSet { range: Range(355, 988), items: [365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987], want_response: false }], wants: [355, 470], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(19, 204), items: [43, 184], want_response: true }, ItemSet { range: Range(204, 355), items: [218], want_response: true }], wants: [365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987], provide: [(355, true), (470, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(19, 204), items: [19, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 189, 191], want_response: false }, ItemSet { range: Range(204, 355), items: [204, 210, 211, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342], want_response: false }], wants: [43, 184, 218], provide: [(365, true), (383, true), (393, true), (401, true), (411, true), (414, true), (415, true), (419, true), (426, true), (461, true), (466, true), (481, true), (517, true), (545, true), (546, true), (556, true), (560, true), (625, true), (628, true), (631, true), (636, true), (649, true), (650, true), (676, true), (699, true), (701, true), (704, true), (715, true), (722, true), (728, true), (745, true), (770, true), (788, true), (824, true), (833, true), (855, true), (863, true), (876, true), (877, true), (885, true), (894, true), (916, true), (926, true), (935, true), (951, true), (954, true), (960, true), (982, true), (987, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [19, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 189, 191, 204, 210, 211, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342], provide: [(43, true), (184, true), (218, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(19, true), (57, true), (68, true), (82, true), (87, true), (92, true), (93, true), (110, true), (115, true), (117, true), (124, true), (189, true), (191, true), (204, true), (210, true), (211, true), (219, true), (223, true), (232, true), (248, true), (274, true), (330, true), (335, true), (336, true), (339, true), (342, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {19, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 189, 191, 204, 210, 211, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342, 365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987} + [355, 470, 43, 184, 218]
[INFO] [stdout] b all: {43, 184, 218, 355, 470} + [365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987, 19, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 189, 191, 204, 210, 211, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [19, 43, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 184, 189, 191, 204, 210, 211, 218, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342, 355, 365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 470, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [19, 43, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 184, 189, 191, 204, 210, 211, 218, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342, 355, 365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 470, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [19, 43, 57, 68, 82, 87, 92, 93, 110, 115, 117, 124, 184, 189, 191, 204, 210, 211, 218, 219, 223, 232, 248, 274, 330, 335, 336, 339, 342, 355, 365, 383, 393, 401, 411, 414, 415, 419, 426, 461, 466, 470, 481, 517, 545, 546, 556, 560, 625, 628, 631, 636, 649, 650, 676, 699, 701, 704, 715, 722, 728, 745, 770, 788, 824, 833, 855, 863, 876, 877, 885, 894, 916, 926, 935, 951, 954, 960, 982, 987], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {34, 76, 139, 160, 200, 269, 290, 475, 501, 675, 734, 744, 923, 943}
[INFO] [stdout] b items: {37, 58, 76, 150, 175, 220, 228, 274, 302, 352, 363, 380, 391, 398, 467, 499, 504, 514, 518, 545, 546, 588, 597, 605, 612, 619, 662, 668, 682, 689, 697, 717, 752, 779, 819, 836, 860, 864, 886, 900, 919}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(34, 944), fp: EncodedCountingMonoid(14, SumMonoid(6163)) }], item_sets: [ItemSet { range: Range(944, 34), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(34, 588), fp: EncodedCountingMonoid(21, SumMonoid(6997)) }, Fingerprint { range: Range(588, 944), fp: EncodedCountingMonoid(20, SumMonoid(14751)) }], item_sets: [ItemSet { range: Range(944, 34), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(34, 269), fp: EncodedCountingMonoid(5, SumMonoid(609)) }, Fingerprint { range: Range(269, 588), fp: EncodedCountingMonoid(4, SumMonoid(1535)) }, Fingerprint { range: Range(588, 923), fp: EncodedCountingMonoid(3, SumMonoid(2153)) }], item_sets: [ItemSet { range: Range(923, 944), items: [923, 943], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(34, 175), fp: EncodedCountingMonoid(4, SumMonoid(321)) }, Fingerprint { range: Range(175, 269), fp: EncodedCountingMonoid(3, SumMonoid(623)) }, Fingerprint { range: Range(269, 467), fp: EncodedCountingMonoid(7, SumMonoid(2460)) }, Fingerprint { range: Range(467, 588), fp: EncodedCountingMonoid(7, SumMonoid(3593)) }, Fingerprint { range: Range(588, 717), fp: EncodedCountingMonoid(10, SumMonoid(6419)) }, Fingerprint { range: Range(717, 923), fp: EncodedCountingMonoid(10, SumMonoid(8332)) }], item_sets: [ItemSet { range: Range(923, 944), items: [], want_response: false }], wants: [923, 943], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(34, 139), items: [34, 76], want_response: true }, ItemSet { range: Range(139, 175), items: [139, 160], want_response: true }, ItemSet { range: Range(175, 269), items: [200], want_response: true }, ItemSet { range: Range(269, 467), items: [269, 290], want_response: true }, ItemSet { range: Range(467, 588), items: [475, 501], want_response: true }, ItemSet { range: Range(588, 717), items: [675], want_response: true }, ItemSet { range: Range(717, 923), items: [734, 744], want_response: true }], wants: [], provide: [(923, true), (943, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(34, 139), items: [37, 58, 76], want_response: false }, ItemSet { range: Range(139, 175), items: [150], want_response: false }, ItemSet { range: Range(175, 269), items: [175, 220, 228], want_response: false }, ItemSet { range: Range(269, 467), items: [274, 302, 352, 363, 380, 391, 398], want_response: false }, ItemSet { range: Range(467, 588), items: [467, 499, 504, 514, 518, 545, 546], want_response: false }, ItemSet { range: Range(588, 717), items: [588, 597, 605, 612, 619, 662, 668, 682, 689, 697], want_response: false }, ItemSet { range: Range(717, 923), items: [717, 752, 779, 819, 836, 860, 864, 886, 900, 919], want_response: false }], wants: [34, 139, 160, 200, 269, 290, 475, 501, 675, 734, 744], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [37, 58, 150, 175, 220, 228, 274, 302, 352, 363, 380, 391, 398, 467, 499, 504, 514, 518, 545, 546, 588, 597, 605, 612, 619, 662, 668, 682, 689, 697, 717, 752, 779, 819, 836, 860, 864, 886, 900, 919], provide: [(34, true), (139, true), (160, true), (200, true), (269, true), (290, true), (475, true), (501, true), (675, true), (734, true), (744, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(37, true), (58, true), (150, true), (175, true), (220, true), (228, true), (274, true), (302, true), (352, true), (363, true), (380, true), (391, true), (398, true), (467, true), (499, true), (504, true), (514, true), (518, true), (545, true), (546, true), (588, true), (597, true), (605, true), (612, true), (619, true), (662, true), (668, true), (682, true), (689, true), (697, true), (717, true), (752, true), (779, true), (819, true), (836, true), (860, true), (864, true), (886, true), (900, true), (919, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {34, 76, 139, 160, 200, 269, 290, 475, 501, 675, 734, 744, 923, 943} + [37, 58, 150, 175, 220, 228, 274, 302, 352, 363, 380, 391, 398, 467, 499, 504, 514, 518, 545, 546, 588, 597, 605, 612, 619, 662, 668, 682, 689, 697, 717, 752, 779, 819, 836, 860, 864, 886, 900, 919]
[INFO] [stdout] b all: {37, 58, 76, 150, 175, 220, 228, 274, 302, 352, 363, 380, 391, 398, 467, 499, 504, 514, 518, 545, 546, 588, 597, 605, 612, 619, 662, 668, 682, 689, 697, 717, 752, 779, 819, 836, 860, 864, 886, 900, 919} + [923, 943, 34, 139, 160, 200, 269, 290, 475, 501, 675, 734, 744]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [34, 37, 58, 76, 139, 150, 160, 175, 200, 220, 228, 269, 274, 290, 302, 352, 363, 380, 391, 398, 467, 475, 499, 501, 504, 514, 518, 545, 546, 588, 597, 605, 612, 619, 662, 668, 675, 682, 689, 697, 717, 734, 744, 752, 779, 819, 836, 860, 864, 886, 900, 919, 923, 943]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [34, 37, 58, 76, 139, 150, 160, 175, 200, 220, 228, 269, 274, 290, 302, 352, 363, 380, 391, 398, 467, 475, 499, 501, 504, 514, 518, 545, 546, 588, 597, 605, 612, 619, 662, 668, 675, 682, 689, 697, 717, 734, 744, 752, 779, 819, 836, 860, 864, 886, 900, 919, 923, 943], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [34, 37, 58, 76, 139, 150, 160, 175, 200, 220, 228, 269, 274, 290, 302, 352, 363, 380, 391, 398, 467, 475, 499, 501, 504, 514, 518, 545, 546, 588, 597, 605, 612, 619, 662, 668, 675, 682, 689, 697, 717, 734, 744, 752, 779, 819, 836, 860, 864, 886, 900, 919, 923, 943], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {15, 97, 223, 345, 475, 634, 655, 659, 698, 719, 816, 853, 876}
[INFO] [stdout] b items: {16, 20, 28, 30, 76, 85, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206, 231, 276, 284, 300, 316, 331, 341, 353, 357, 392, 416, 422, 437, 458, 476, 510, 521, 532, 551, 562, 568, 585, 614, 620, 646, 659, 666, 695, 697, 699, 708, 713, 734, 737, 747, 797, 829, 879, 887, 899, 930, 961, 967}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 877), fp: EncodedCountingMonoid(13, SumMonoid(7065)) }], item_sets: [ItemSet { range: Range(877, 15), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 416), fp: EncodedCountingMonoid(27, SumMonoid(5111)) }, Fingerprint { range: Range(416, 877), fp: EncodedCountingMonoid(27, SumMonoid(16599)) }], item_sets: [ItemSet { range: Range(877, 15), items: [879, 887, 899, 930, 961, 967], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(416, 719), fp: EncodedCountingMonoid(5, SumMonoid(3121)) }, Fingerprint { range: Range(719, 877), fp: EncodedCountingMonoid(4, SumMonoid(3264)) }], item_sets: [ItemSet { range: Range(15, 223), items: [15, 97], want_response: true }, ItemSet { range: Range(223, 416), items: [223, 345], want_response: true }], wants: [879, 887, 899, 930, 961, 967], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 585), fp: EncodedCountingMonoid(11, SumMonoid(5453)) }, Fingerprint { range: Range(585, 719), fp: EncodedCountingMonoid(11, SumMonoid(7302)) }, Fingerprint { range: Range(719, 797), fp: EncodedCountingMonoid(3, SumMonoid(2218)) }], item_sets: [ItemSet { range: Range(15, 223), items: [16, 20, 28, 30, 76, 85, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206], want_response: false }, ItemSet { range: Range(223, 416), items: [231, 276, 284, 300, 316, 331, 341, 353, 357, 392], want_response: false }, ItemSet { range: Range(797, 877), items: [797, 829], want_response: true }], wants: [15, 97, 223, 345], provide: [(879, true), (887, true), (899, true), (930, true), (961, true), (967, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(797, 877), items: [816, 853, 876], want_response: false }, ItemSet { range: Range(416, 585), items: [475], want_response: true }, ItemSet { range: Range(585, 659), items: [634, 655], want_response: true }, ItemSet { range: Range(659, 719), items: [659, 698], want_response: true }, ItemSet { range: Range(719, 797), items: [719], want_response: true }], wants: [16, 20, 28, 30, 76, 85, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206, 231, 276, 284, 300, 316, 331, 341, 353, 357, 392, 797, 829], provide: [(15, true), (97, true), (223, true), (345, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 585), items: [416, 422, 437, 458, 476, 510, 521, 532, 551, 562, 568], want_response: false }, ItemSet { range: Range(585, 659), items: [585, 614, 620, 646], want_response: false }, ItemSet { range: Range(659, 719), items: [659, 666, 695, 697, 699, 708, 713], want_response: false }, ItemSet { range: Range(719, 797), items: [734, 737, 747], want_response: false }], wants: [816, 853, 876, 475, 634, 655, 698, 719], provide: [(16, true), (20, true), (28, true), (30, true), (76, true), (85, true), (101, true), (119, true), (120, true), (140, true), (145, true), (155, true), (160, true), (167, true), (172, true), (190, true), (206, true), (231, true), (276, true), (284, true), (300, true), (316, true), (331, true), (341, true), (353, true), (357, true), (392, true), (797, true), (829, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 422, 437, 458, 476, 510, 521, 532, 551, 562, 568, 585, 614, 620, 646, 666, 695, 697, 699, 708, 713, 734, 737, 747], provide: [(816, true), (853, true), (876, true), (475, true), (634, true), (655, true), (698, true), (719, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (422, true), (437, true), (458, true), (476, true), (510, true), (521, true), (532, true), (551, true), (562, true), (568, true), (585, true), (614, true), (620, true), (646, true), (666, true), (695, true), (697, true), (699, true), (708, true), (713, true), (734, true), (737, true), (747, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {15, 97, 223, 345, 475, 634, 655, 659, 698, 719, 816, 853, 876} + [879, 887, 899, 930, 961, 967, 16, 20, 28, 30, 76, 85, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206, 231, 276, 284, 300, 316, 331, 341, 353, 357, 392, 797, 829, 416, 422, 437, 458, 476, 510, 521, 532, 551, 562, 568, 585, 614, 620, 646, 666, 695, 697, 699, 708, 713, 734, 737, 747]
[INFO] [stdout] b all: {16, 20, 28, 30, 76, 85, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206, 231, 276, 284, 300, 316, 331, 341, 353, 357, 392, 416, 422, 437, 458, 476, 510, 521, 532, 551, 562, 568, 585, 614, 620, 646, 659, 666, 695, 697, 699, 708, 713, 734, 737, 747, 797, 829, 879, 887, 899, 930, 961, 967} + [15, 97, 223, 345, 816, 853, 876, 475, 634, 655, 698, 719]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [15, 16, 20, 28, 30, 76, 85, 97, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206, 223, 231, 276, 284, 300, 316, 331, 341, 345, 353, 357, 392, 416, 422, 437, 458, 475, 476, 510, 521, 532, 551, 562, 568, 585, 614, 620, 634, 646, 655, 659, 666, 695, 697, 698, 699, 708, 713, 719, 734, 737, 747, 797, 816, 829, 853, 876, 879, 887, 899, 930, 961, 967]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [15, 16, 20, 28, 30, 76, 85, 97, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206, 223, 231, 276, 284, 300, 316, 331, 341, 345, 353, 357, 392, 416, 422, 437, 458, 475, 476, 510, 521, 532, 551, 562, 568, 585, 614, 620, 634, 646, 655, 659, 666, 695, 697, 698, 699, 708, 713, 719, 734, 737, 747, 797, 816, 829, 853, 876, 879, 887, 899, 930, 961, 967], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [15, 16, 20, 28, 30, 76, 85, 97, 101, 119, 120, 140, 145, 155, 160, 167, 172, 190, 206, 223, 231, 276, 284, 300, 316, 331, 341, 345, 353, 357, 392, 416, 422, 437, 458, 475, 476, 510, 521, 532, 551, 562, 568, 585, 614, 620, 634, 646, 655, 659, 666, 695, 697, 698, 699, 708, 713, 719, 734, 737, 747, 797, 816, 829, 853, 876, 879, 887, 899, 930, 961, 967], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {8, 11, 45, 61, 66, 67, 82, 100, 105, 118, 123, 124, 130, 136, 141, 160, 169, 178, 198, 210, 211, 235, 281, 302, 304, 311, 321, 357, 359, 367, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534, 547, 587, 593, 630, 631, 642, 707, 713, 749, 753, 758, 778, 779, 780, 787, 789, 796, 798, 820, 829, 837, 838, 843, 861, 874, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999}
[INFO] [stdout] b items: {49, 79, 135, 138, 175, 229, 253, 279, 343, 378, 541, 556, 635, 683, 706, 714, 747, 819, 850, 877, 954}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 1000), fp: EncodedCountingMonoid(88, SumMonoid(49088)) }], item_sets: [ItemSet { range: Range(1000, 8), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 556), fp: EncodedCountingMonoid(11, SumMonoid(2599)) }, Fingerprint { range: Range(556, 1000), fp: EncodedCountingMonoid(10, SumMonoid(7541)) }], item_sets: [ItemSet { range: Range(1000, 8), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 281), fp: EncodedCountingMonoid(22, SumMonoid(2678)) }, Fingerprint { range: Range(281, 556), fp: EncodedCountingMonoid(22, SumMonoid(9282)) }, Fingerprint { range: Range(556, 861), fp: EncodedCountingMonoid(22, SumMonoid(16437)) }, Fingerprint { range: Range(861, 1000), fp: EncodedCountingMonoid(22, SumMonoid(20691)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 175), fp: EncodedCountingMonoid(4, SumMonoid(401)) }, Fingerprint { range: Range(175, 281), fp: EncodedCountingMonoid(4, SumMonoid(936)) }, Fingerprint { range: Range(556, 714), fp: EncodedCountingMonoid(4, SumMonoid(2580)) }, Fingerprint { range: Range(714, 861), fp: EncodedCountingMonoid(4, SumMonoid(3130)) }], item_sets: [ItemSet { range: Range(281, 541), items: [343, 378], want_response: true }, ItemSet { range: Range(541, 556), items: [541], want_response: true }, ItemSet { range: Range(861, 1000), items: [877, 954], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 118), fp: EncodedCountingMonoid(9, SumMonoid(545)) }, Fingerprint { range: Range(118, 175), fp: EncodedCountingMonoid(8, SumMonoid(1101)) }, Fingerprint { range: Range(175, 211), fp: EncodedCountingMonoid(3, SumMonoid(586)) }, Fingerprint { range: Range(556, 642), fp: EncodedCountingMonoid(4, SumMonoid(2441)) }, Fingerprint { range: Range(642, 714), fp: EncodedCountingMonoid(3, SumMonoid(2062)) }, Fingerprint { range: Range(714, 796), fp: EncodedCountingMonoid(8, SumMonoid(6173)) }, Fingerprint { range: Range(796, 861), fp: EncodedCountingMonoid(7, SumMonoid(5761)) }], item_sets: [ItemSet { range: Range(281, 541), items: [281, 302, 304, 311, 321, 357, 359, 367, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534], want_response: false }, ItemSet { range: Range(541, 556), items: [547], want_response: false }, ItemSet { range: Range(861, 1000), items: [861, 874, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999], want_response: false }, ItemSet { range: Range(211, 281), items: [211, 235], want_response: true }], wants: [343, 378, 541, 877, 954], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(211, 281), items: [229, 253, 279], want_response: false }, ItemSet { range: Range(8, 118), items: [49, 79], want_response: true }, ItemSet { range: Range(118, 175), items: [135, 138], want_response: true }, ItemSet { range: Range(175, 211), items: [175], want_response: true }, ItemSet { range: Range(556, 642), items: [556, 635], want_response: true }, ItemSet { range: Range(642, 714), items: [683, 706], want_response: true }, ItemSet { range: Range(714, 796), items: [714, 747], want_response: true }, ItemSet { range: Range(796, 861), items: [819, 850], want_response: true }], wants: [281, 302, 304, 311, 321, 357, 359, 367, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534, 547, 861, 874, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999, 211, 235], provide: [(343, true), (378, true), (541, true), (877, true), (954, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(8, 118), items: [8, 11, 45, 61, 66, 67, 82, 100, 105], want_response: false }, ItemSet { range: Range(118, 175), items: [118, 123, 124, 130, 136, 141, 160, 169], want_response: false }, ItemSet { range: Range(175, 211), items: [178, 198, 210], want_response: false }, ItemSet { range: Range(556, 642), items: [587, 593, 630, 631], want_response: false }, ItemSet { range: Range(642, 714), items: [642, 707, 713], want_response: false }, ItemSet { range: Range(714, 796), items: [749, 753, 758, 778, 779, 780, 787, 789], want_response: false }, ItemSet { range: Range(796, 861), items: [796, 798, 820, 829, 837, 838, 843], want_response: false }], wants: [229, 253, 279, 49, 79, 135, 138, 175, 556, 635, 683, 706, 714, 747, 819, 850], provide: [(281, true), (302, true), (304, true), (311, true), (321, true), (357, true), (359, true), (367, true), (381, true), (404, true), (431, true), (439, true), (443, true), (448, true), (483, true), (506, true), (510, true), (512, true), (515, true), (527, true), (534, true), (547, true), (861, true), (874, true), (887, true), (889, true), (895, true), (915, true), (916, true), (920, true), (922, true), (938, true), (939, true), (953, true), (955, true), (956, true), (970, true), (971, true), (976, true), (982, true), (990, true), (991, true), (992, true), (999, true), (211, true), (235, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [8, 11, 45, 61, 66, 67, 82, 100, 105, 118, 123, 124, 130, 136, 141, 160, 169, 178, 198, 210, 587, 593, 630, 631, 642, 707, 713, 749, 753, 758, 778, 779, 780, 787, 789, 796, 798, 820, 829, 837, 838, 843], provide: [(229, true), (253, true), (279, true), (49, true), (79, true), (135, true), (138, true), (175, true), (556, true), (635, true), (683, true), (706, true), (714, true), (747, true), (819, true), (850, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(8, true), (11, true), (45, true), (61, true), (66, true), (67, true), (82, true), (100, true), (105, true), (118, true), (123, true), (124, true), (130, true), (136, true), (141, true), (160, true), (169, true), (178, true), (198, true), (210, true), (587, true), (593, true), (630, true), (631, true), (642, true), (707, true), (713, true), (749, true), (753, true), (758, true), (778, true), (779, true), (780, true), (787, true), (789, true), (796, true), (798, true), (820, true), (829, true), (837, true), (838, true), (843, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {8, 11, 45, 61, 66, 67, 82, 100, 105, 118, 123, 124, 130, 136, 141, 160, 169, 178, 198, 210, 211, 235, 281, 302, 304, 311, 321, 357, 359, 367, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534, 547, 587, 593, 630, 631, 642, 707, 713, 749, 753, 758, 778, 779, 780, 787, 789, 796, 798, 820, 829, 837, 838, 843, 861, 874, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999} + [343, 378, 541, 877, 954, 229, 253, 279, 49, 79, 135, 138, 175, 556, 635, 683, 706, 714, 747, 819, 850]
[INFO] [stdout] b all: {49, 79, 135, 138, 175, 229, 253, 279, 343, 378, 541, 556, 635, 683, 706, 714, 747, 819, 850, 877, 954} + [281, 302, 304, 311, 321, 357, 359, 367, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534, 547, 861, 874, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999, 211, 235, 8, 11, 45, 61, 66, 67, 82, 100, 105, 118, 123, 124, 130, 136, 141, 160, 169, 178, 198, 210, 587, 593, 630, 631, 642, 707, 713, 749, 753, 758, 778, 779, 780, 787, 789, 796, 798, 820, 829, 837, 838, 843]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 11, 45, 49, 61, 66, 67, 79, 82, 100, 105, 118, 123, 124, 130, 135, 136, 138, 141, 160, 169, 175, 178, 198, 210, 211, 229, 235, 253, 279, 281, 302, 304, 311, 321, 343, 357, 359, 367, 378, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534, 541, 547, 556, 587, 593, 630, 631, 635, 642, 683, 706, 707, 713, 714, 747, 749, 753, 758, 778, 779, 780, 787, 789, 796, 798, 819, 820, 829, 837, 838, 843, 850, 861, 874, 877, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 954, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 11, 45, 49, 61, 66, 67, 79, 82, 100, 105, 118, 123, 124, 130, 135, 136, 138, 141, 160, 169, 175, 178, 198, 210, 211, 229, 235, 253, 279, 281, 302, 304, 311, 321, 343, 357, 359, 367, 378, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534, 541, 547, 556, 587, 593, 630, 631, 635, 642, 683, 706, 707, 713, 714, 747, 749, 753, 758, 778, 779, 780, 787, 789, 796, 798, 819, 820, 829, 837, 838, 843, 850, 861, 874, 877, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 954, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 11, 45, 49, 61, 66, 67, 79, 82, 100, 105, 118, 123, 124, 130, 135, 136, 138, 141, 160, 169, 175, 178, 198, 210, 211, 229, 235, 253, 279, 281, 302, 304, 311, 321, 343, 357, 359, 367, 378, 381, 404, 431, 439, 443, 448, 483, 506, 510, 512, 515, 527, 534, 541, 547, 556, 587, 593, 630, 631, 635, 642, 683, 706, 707, 713, 714, 747, 749, 753, 758, 778, 779, 780, 787, 789, 796, 798, 819, 820, 829, 837, 838, 843, 850, 861, 874, 877, 887, 889, 895, 915, 916, 920, 922, 938, 939, 953, 954, 955, 956, 970, 971, 976, 982, 990, 991, 992, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {66, 79, 115, 134, 157, 207, 222, 237, 252, 257, 258, 270, 273, 283, 316, 323, 335, 345, 346, 349, 361, 392, 427, 451, 454, 460, 466, 473, 479, 481, 491, 501, 558, 568, 578, 588, 613, 629, 688, 697, 705, 707, 714, 758, 792, 814, 818, 823, 831, 844, 846, 883, 891, 900, 940, 978, 987, 999}
[INFO] [stdout] b items: {1, 60, 110, 111, 162, 250, 256, 418, 441, 491, 509, 526, 550, 605, 638, 648, 666, 695, 816, 832, 969, 985}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(66, 1000), fp: EncodedCountingMonoid(58, SumMonoid(30409)) }], item_sets: [ItemSet { range: Range(1000, 66), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(66, 550), fp: EncodedCountingMonoid(10, SumMonoid(3274)) }, Fingerprint { range: Range(550, 1000), fp: EncodedCountingMonoid(10, SumMonoid(7404)) }], item_sets: [ItemSet { range: Range(1000, 66), items: [1, 60], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(66, 335), fp: EncodedCountingMonoid(16, SumMonoid(3449)) }, Fingerprint { range: Range(335, 550), fp: EncodedCountingMonoid(16, SumMonoid(6811)) }, Fingerprint { range: Range(550, 814), fp: EncodedCountingMonoid(13, SumMonoid(8595)) }, Fingerprint { range: Range(814, 1000), fp: EncodedCountingMonoid(13, SumMonoid(11554)) }], item_sets: [], wants: [1, 60], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(66, 250), fp: EncodedCountingMonoid(3, SumMonoid(383)) }, Fingerprint { range: Range(335, 509), fp: EncodedCountingMonoid(3, SumMonoid(1350)) }, Fingerprint { range: Range(550, 648), fp: EncodedCountingMonoid(3, SumMonoid(1793)) }, Fingerprint { range: Range(648, 814), fp: EncodedCountingMonoid(3, SumMonoid(2009)) }], item_sets: [ItemSet { range: Range(250, 335), items: [250, 256], want_response: true }, ItemSet { range: Range(509, 550), items: [509, 526], want_response: true }, ItemSet { range: Range(814, 969), items: [816, 832], want_response: true }, ItemSet { range: Range(969, 1000), items: [969, 985], want_response: true }], wants: [], provide: [(1, true), (60, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(66, 157), fp: EncodedCountingMonoid(4, SumMonoid(394)) }, Fingerprint { range: Range(157, 250), fp: EncodedCountingMonoid(4, SumMonoid(823)) }, Fingerprint { range: Range(335, 454), fp: EncodedCountingMonoid(8, SumMonoid(3006)) }, Fingerprint { range: Range(454, 509), fp: EncodedCountingMonoid(8, SumMonoid(3805)) }, Fingerprint { range: Range(550, 588), fp: EncodedCountingMonoid(3, SumMonoid(1704)) }, Fingerprint { range: Range(588, 648), fp: EncodedCountingMonoid(3, SumMonoid(1830)) }, Fingerprint { range: Range(648, 714), fp: EncodedCountingMonoid(4, SumMonoid(2797)) }, Fingerprint { range: Range(714, 814), fp: EncodedCountingMonoid(3, SumMonoid(2264)) }], item_sets: [ItemSet { range: Range(250, 335), items: [252, 257, 258, 270, 273, 283, 316, 323], want_response: false }, ItemSet { range: Range(509, 550), items: [], want_response: false }, ItemSet { range: Range(814, 969), items: [814, 818, 823, 831, 844, 846, 883, 891, 900, 940], want_response: false }, ItemSet { range: Range(969, 1000), items: [978, 987, 999], want_response: false }], wants: [250, 256, 509, 526, 816, 832, 969, 985], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(66, 157), items: [110, 111], want_response: true }, ItemSet { range: Range(157, 250), items: [162], want_response: true }, ItemSet { range: Range(335, 454), items: [418, 441], want_response: true }, ItemSet { range: Range(454, 509), items: [491], want_response: true }, ItemSet { range: Range(550, 588), items: [550], want_response: true }, ItemSet { range: Range(588, 648), items: [605, 638], want_response: true }, ItemSet { range: Range(648, 695), items: [648, 666], want_response: true }, ItemSet { range: Range(695, 714), items: [695], want_response: true }, ItemSet { range: Range(714, 814), items: [], want_response: true }], wants: [252, 257, 258, 270, 273, 283, 316, 323, 814, 818, 823, 831, 844, 846, 883, 891, 900, 940, 978, 987, 999], provide: [(250, true), (256, true), (509, true), (526, true), (816, true), (832, true), (969, true), (985, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(66, 157), items: [66, 79, 115, 134], want_response: false }, ItemSet { range: Range(157, 250), items: [157, 207, 222, 237], want_response: false }, ItemSet { range: Range(335, 454), items: [335, 345, 346, 349, 361, 392, 427, 451], want_response: false }, ItemSet { range: Range(454, 509), items: [454, 460, 466, 473, 479, 481, 491, 501], want_response: false }, ItemSet { range: Range(550, 588), items: [558, 568, 578], want_response: false }, ItemSet { range: Range(588, 648), items: [588, 613, 629], want_response: false }, ItemSet { range: Range(648, 695), items: [688], want_response: false }, ItemSet { range: Range(695, 714), items: [697, 705, 707], want_response: false }, ItemSet { range: Range(714, 814), items: [714, 758, 792], want_response: false }], wants: [110, 111, 162, 418, 441, 550, 605, 638, 648, 666, 695], provide: [(252, true), (257, true), (258, true), (270, true), (273, true), (283, true), (316, true), (323, true), (814, true), (818, true), (823, true), (831, true), (844, true), (846, true), (883, true), (891, true), (900, true), (940, true), (978, true), (987, true), (999, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [66, 79, 115, 134, 157, 207, 222, 237, 335, 345, 346, 349, 361, 392, 427, 451, 454, 460, 466, 473, 479, 481, 501, 558, 568, 578, 588, 613, 629, 688, 697, 705, 707, 714, 758, 792], provide: [(110, true), (111, true), (162, true), (418, true), (441, true), (550, true), (605, true), (638, true), (648, true), (666, true), (695, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(66, true), (79, true), (115, true), (134, true), (157, true), (207, true), (222, true), (237, true), (335, true), (345, true), (346, true), (349, true), (361, true), (392, true), (427, true), (451, true), (454, true), (460, true), (466, true), (473, true), (479, true), (481, true), (501, true), (558, true), (568, true), (578, true), (588, true), (613, true), (629, true), (688, true), (697, true), (705, true), (707, true), (714, true), (758, true), (792, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {66, 79, 115, 134, 157, 207, 222, 237, 252, 257, 258, 270, 273, 283, 316, 323, 335, 345, 346, 349, 361, 392, 427, 451, 454, 460, 466, 473, 479, 481, 491, 501, 558, 568, 578, 588, 613, 629, 688, 697, 705, 707, 714, 758, 792, 814, 818, 823, 831, 844, 846, 883, 891, 900, 940, 978, 987, 999} + [1, 60, 250, 256, 509, 526, 816, 832, 969, 985, 110, 111, 162, 418, 441, 550, 605, 638, 648, 666, 695]
[INFO] [stdout] b all: {1, 60, 110, 111, 162, 250, 256, 418, 441, 491, 509, 526, 550, 605, 638, 648, 666, 695, 816, 832, 969, 985} + [252, 257, 258, 270, 273, 283, 316, 323, 814, 818, 823, 831, 844, 846, 883, 891, 900, 940, 978, 987, 999, 66, 79, 115, 134, 157, 207, 222, 237, 335, 345, 346, 349, 361, 392, 427, 451, 454, 460, 466, 473, 479, 481, 501, 558, 568, 578, 588, 613, 629, 688, 697, 705, 707, 714, 758, 792]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 60, 66, 79, 110, 111, 115, 134, 157, 162, 207, 222, 237, 250, 252, 256, 257, 258, 270, 273, 283, 316, 323, 335, 345, 346, 349, 361, 392, 418, 427, 441, 451, 454, 460, 466, 473, 479, 481, 491, 501, 509, 526, 550, 558, 568, 578, 588, 605, 613, 629, 638, 648, 666, 688, 695, 697, 705, 707, 714, 758, 792, 814, 816, 818, 823, 831, 832, 844, 846, 883, 891, 900, 940, 969, 978, 985, 987, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 60, 66, 79, 110, 111, 115, 134, 157, 162, 207, 222, 237, 250, 252, 256, 257, 258, 270, 273, 283, 316, 323, 335, 345, 346, 349, 361, 392, 418, 427, 441, 451, 454, 460, 466, 473, 479, 481, 491, 501, 509, 526, 550, 558, 568, 578, 588, 605, 613, 629, 638, 648, 666, 688, 695, 697, 705, 707, 714, 758, 792, 814, 816, 818, 823, 831, 832, 844, 846, 883, 891, 900, 940, 969, 978, 985, 987, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 60, 66, 79, 110, 111, 115, 134, 157, 162, 207, 222, 237, 250, 252, 256, 257, 258, 270, 273, 283, 316, 323, 335, 345, 346, 349, 361, 392, 418, 427, 441, 451, 454, 460, 466, 473, 479, 481, 491, 501, 509, 526, 550, 558, 568, 578, 588, 605, 613, 629, 638, 648, 666, 688, 695, 697, 705, 707, 714, 758, 792, 814, 816, 818, 823, 831, 832, 844, 846, 883, 891, 900, 940, 969, 978, 985, 987, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {51, 74, 96, 199, 230, 233, 302, 310, 341, 345, 394, 402, 404, 438, 500, 547, 572, 596, 613, 676, 712, 723, 756, 768, 788, 948, 951, 965, 974, 979}
[INFO] [stdout] b items: {1, 11, 23, 38, 39, 42, 88, 98, 115, 117, 142, 177, 194, 199, 237, 250, 268, 284, 305, 326, 348, 361, 370, 380, 384, 385, 387, 399, 407, 410, 412, 429, 443, 454, 468, 470, 487, 492, 493, 517, 531, 548, 553, 563, 570, 579, 599, 625, 629, 633, 666, 670, 692, 698, 708, 719, 749, 765, 773, 787, 788, 822, 838, 864, 914, 934, 945, 969, 982, 989}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(51, 980), fp: EncodedCountingMonoid(30, SumMonoid(15887)) }], item_sets: [ItemSet { range: Range(980, 51), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(51, 492), fp: EncodedCountingMonoid(31, SumMonoid(9794)) }, Fingerprint { range: Range(492, 980), fp: EncodedCountingMonoid(31, SumMonoid(21633)) }], item_sets: [ItemSet { range: Range(980, 51), items: [982, 989, 1, 11, 23, 38, 39, 42], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(51, 310), fp: EncodedCountingMonoid(7, SumMonoid(1185)) }, Fingerprint { range: Range(310, 492), fp: EncodedCountingMonoid(7, SumMonoid(2634)) }, Fingerprint { range: Range(492, 756), fp: EncodedCountingMonoid(8, SumMonoid(4939)) }, Fingerprint { range: Range(756, 980), fp: EncodedCountingMonoid(8, SumMonoid(7129)) }], item_sets: [], wants: [982, 989, 1, 11, 23, 38, 39, 42], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(51, 199), fp: EncodedCountingMonoid(7, SumMonoid(931)) }, Fingerprint { range: Range(199, 310), fp: EncodedCountingMonoid(6, SumMonoid(1543)) }, Fingerprint { range: Range(310, 407), fp: EncodedCountingMonoid(9, SumMonoid(3340)) }, Fingerprint { range: Range(407, 492), fp: EncodedCountingMonoid(9, SumMonoid(3980)) }, Fingerprint { range: Range(492, 625), fp: EncodedCountingMonoid(10, SumMonoid(5445)) }, Fingerprint { range: Range(625, 756), fp: EncodedCountingMonoid(10, SumMonoid(6789)) }, Fingerprint { range: Range(756, 864), fp: EncodedCountingMonoid(6, SumMonoid(4773)) }, Fingerprint { range: Range(864, 980), fp: EncodedCountingMonoid(5, SumMonoid(4626)) }], item_sets: [], wants: [], provide: [(982, true), (989, true), (1, true), (11, true), (23, true), (38, true), (39, true), (42, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(310, 394), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(394, 407), fp: EncodedCountingMonoid(3, SumMonoid(1200)) }, Fingerprint { range: Range(492, 596), fp: EncodedCountingMonoid(3, SumMonoid(1619)) }, Fingerprint { range: Range(864, 974), fp: EncodedCountingMonoid(3, SumMonoid(2864)) }], item_sets: [ItemSet { range: Range(51, 96), items: [51, 74], want_response: true }, ItemSet { range: Range(96, 199), items: [96], want_response: true }, ItemSet { range: Range(199, 233), items: [199, 230], want_response: true }, ItemSet { range: Range(233, 310), items: [233, 302], want_response: true }, ItemSet { range: Range(407, 492), items: [438], want_response: true }, ItemSet { range: Range(596, 625), items: [596, 613], want_response: true }, ItemSet { range: Range(625, 723), items: [676, 712], want_response: true }, ItemSet { range: Range(723, 756), items: [723], want_response: true }, ItemSet { range: Range(756, 788), items: [756, 768], want_response: true }, ItemSet { range: Range(788, 864), items: [788], want_response: true }, ItemSet { range: Range(974, 980), items: [974, 979], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(310, 380), fp: EncodedCountingMonoid(4, SumMonoid(1405)) }, Fingerprint { range: Range(380, 394), fp: EncodedCountingMonoid(4, SumMonoid(1536)) }, Fingerprint { range: Range(492, 553), fp: EncodedCountingMonoid(5, SumMonoid(2581)) }, Fingerprint { range: Range(553, 596), fp: EncodedCountingMonoid(4, SumMonoid(2265)) }, Fingerprint { range: Range(864, 945), fp: EncodedCountingMonoid(3, SumMonoid(2712)) }], item_sets: [ItemSet { range: Range(51, 96), items: [88], want_response: false }, ItemSet { range: Range(96, 199), items: [98, 115, 117, 142, 177, 194], want_response: false }, ItemSet { range: Range(199, 233), items: [199], want_response: false }, ItemSet { range: Range(233, 310), items: [237, 250, 268, 284, 305], want_response: false }, ItemSet { range: Range(407, 492), items: [407, 410, 412, 429, 443, 454, 468, 470, 487], want_response: false }, ItemSet { range: Range(596, 625), items: [599], want_response: false }, ItemSet { range: Range(625, 723), items: [625, 629, 633, 666, 670, 692, 698, 708, 719], want_response: false }, ItemSet { range: Range(723, 756), items: [749], want_response: false }, ItemSet { range: Range(756, 788), items: [765, 773, 787], want_response: false }, ItemSet { range: Range(788, 864), items: [788, 822, 838], want_response: false }, ItemSet { range: Range(974, 980), items: [], want_response: false }, ItemSet { range: Range(394, 407), items: [399], want_response: true }, ItemSet { range: Range(945, 974), items: [945, 969], want_response: true }], wants: [51, 74, 96, 230, 233, 302, 438, 596, 613, 676, 712, 723, 756, 768, 974, 979], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(394, 407), items: [394, 402, 404], want_response: false }, ItemSet { range: Range(945, 974), items: [948, 951, 965], want_response: false }, ItemSet { range: Range(310, 345), items: [310, 341], want_response: true }, ItemSet { range: Range(345, 380), items: [345], want_response: true }, ItemSet { range: Range(380, 394), items: [], want_response: true }, ItemSet { range: Range(492, 553), items: [500, 547], want_response: true }, ItemSet { range: Range(553, 596), items: [572], want_response: true }, ItemSet { range: Range(864, 945), items: [], want_response: true }], wants: [88, 98, 115, 117, 142, 177, 194, 237, 250, 268, 284, 305, 407, 410, 412, 429, 443, 454, 468, 470, 487, 599, 625, 629, 633, 666, 670, 692, 698, 708, 719, 749, 765, 773, 787, 822, 838, 399, 945, 969], provide: [(51, true), (74, true), (96, true), (230, true), (233, true), (302, true), (438, true), (596, true), (613, true), (676, true), (712, true), (723, true), (756, true), (768, true), (974, true), (979, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(310, 345), items: [326], want_response: false }, ItemSet { range: Range(345, 380), items: [348, 361, 370], want_response: false }, ItemSet { range: Range(380, 394), items: [380, 384, 385, 387], want_response: false }, ItemSet { range: Range(492, 553), items: [492, 493, 517, 531, 548], want_response: false }, ItemSet { range: Range(553, 596), items: [553, 563, 570, 579], want_response: false }, ItemSet { range: Range(864, 945), items: [864, 914, 934], want_response: false }], wants: [394, 402, 404, 948, 951, 965, 310, 341, 345, 500, 547, 572], provide: [(88, true), (98, true), (115, true), (117, true), (142, true), (177, true), (194, true), (237, true), (250, true), (268, true), (284, true), (305, true), (407, true), (410, true), (412, true), (429, true), (443, true), (454, true), (468, true), (470, true), (487, true), (599, true), (625, true), (629, true), (633, true), (666, true), (670, true), (692, true), (698, true), (708, true), (719, true), (749, true), (765, true), (773, true), (787, true), (822, true), (838, true), (399, true), (945, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [326, 348, 361, 370, 380, 384, 385, 387, 492, 493, 517, 531, 548, 553, 563, 570, 579, 864, 914, 934], provide: [(394, true), (402, true), (404, true), (948, true), (951, true), (965, true), (310, true), (341, true), (345, true), (500, true), (547, true), (572, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(326, true), (348, true), (361, true), (370, true), (380, true), (384, true), (385, true), (387, true), (492, true), (493, true), (517, true), (531, true), (548, true), (553, true), (563, true), (570, true), (579, true), (864, true), (914, true), (934, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {51, 74, 96, 199, 230, 233, 302, 310, 341, 345, 394, 402, 404, 438, 500, 547, 572, 596, 613, 676, 712, 723, 756, 768, 788, 948, 951, 965, 974, 979} + [982, 989, 1, 11, 23, 38, 39, 42, 88, 98, 115, 117, 142, 177, 194, 237, 250, 268, 284, 305, 407, 410, 412, 429, 443, 454, 468, 470, 487, 599, 625, 629, 633, 666, 670, 692, 698, 708, 719, 749, 765, 773, 787, 822, 838, 399, 945, 969, 326, 348, 361, 370, 380, 384, 385, 387, 492, 493, 517, 531, 548, 553, 563, 570, 579, 864, 914, 934]
[INFO] [stdout] b all: {1, 11, 23, 38, 39, 42, 88, 98, 115, 117, 142, 177, 194, 199, 237, 250, 268, 284, 305, 326, 348, 361, 370, 380, 384, 385, 387, 399, 407, 410, 412, 429, 443, 454, 468, 470, 487, 492, 493, 517, 531, 548, 553, 563, 570, 579, 599, 625, 629, 633, 666, 670, 692, 698, 708, 719, 749, 765, 773, 787, 788, 822, 838, 864, 914, 934, 945, 969, 982, 989} + [51, 74, 96, 230, 233, 302, 438, 596, 613, 676, 712, 723, 756, 768, 974, 979, 394, 402, 404, 948, 951, 965, 310, 341, 345, 500, 547, 572]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 11, 23, 38, 39, 42, 51, 74, 88, 96, 98, 115, 117, 142, 177, 194, 199, 230, 233, 237, 250, 268, 284, 302, 305, 310, 326, 341, 345, 348, 361, 370, 380, 384, 385, 387, 394, 399, 402, 404, 407, 410, 412, 429, 438, 443, 454, 468, 470, 487, 492, 493, 500, 517, 531, 547, 548, 553, 563, 570, 572, 579, 596, 599, 613, 625, 629, 633, 666, 670, 676, 692, 698, 708, 712, 719, 723, 749, 756, 765, 768, 773, 787, 788, 822, 838, 864, 914, 934, 945, 948, 951, 965, 969, 974, 979, 982, 989]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 11, 23, 38, 39, 42, 51, 74, 88, 96, 98, 115, 117, 142, 177, 194, 199, 230, 233, 237, 250, 268, 284, 302, 305, 310, 326, 341, 345, 348, 361, 370, 380, 384, 385, 387, 394, 399, 402, 404, 407, 410, 412, 429, 438, 443, 454, 468, 470, 487, 492, 493, 500, 517, 531, 547, 548, 553, 563, 570, 572, 579, 596, 599, 613, 625, 629, 633, 666, 670, 676, 692, 698, 708, 712, 719, 723, 749, 756, 765, 768, 773, 787, 788, 822, 838, 864, 914, 934, 945, 948, 951, 965, 969, 974, 979, 982, 989], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 11, 23, 38, 39, 42, 51, 74, 88, 96, 98, 115, 117, 142, 177, 194, 199, 230, 233, 237, 250, 268, 284, 302, 305, 310, 326, 341, 345, 348, 361, 370, 380, 384, 385, 387, 394, 399, 402, 404, 407, 410, 412, 429, 438, 443, 454, 468, 470, 487, 492, 493, 500, 517, 531, 547, 548, 553, 563, 570, 572, 579, 596, 599, 613, 625, 629, 633, 666, 670, 676, 692, 698, 708, 712, 719, 723, 749, 756, 765, 768, 773, 787, 788, 822, 838, 864, 914, 934, 945, 948, 951, 965, 969, 974, 979, 982, 989], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 31, 37, 60, 71, 104, 115, 122, 165, 226, 237, 259, 260, 269, 274, 284, 321, 322, 342, 408, 430, 461, 470, 481, 482, 487, 500, 516, 536, 576, 605, 633, 678, 684, 691, 692, 693, 704, 710, 734, 748, 786, 809, 828, 852, 858, 929, 942, 981, 983}
[INFO] [stdout] b items: {3, 6, 36, 80, 87, 88, 97, 107, 139, 141, 165, 179, 189, 194, 199, 202, 210, 212, 217, 221, 264, 308, 315, 328, 362, 404, 454, 488, 494, 511, 549, 566, 570, 607, 621, 695, 725, 737, 784, 787, 841, 843, 863, 864, 867, 870, 947, 955}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 984), fp: EncodedCountingMonoid(50, SumMonoid(24389)) }], item_sets: [ItemSet { range: Range(984, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 362), fp: EncodedCountingMonoid(24, SumMonoid(3987)) }, Fingerprint { range: Range(362, 984), fp: EncodedCountingMonoid(24, SumMonoid(16404)) }], item_sets: [ItemSet { range: Range(984, 3), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 237), fp: EncodedCountingMonoid(10, SumMonoid(934)) }, Fingerprint { range: Range(237, 362), fp: EncodedCountingMonoid(9, SumMonoid(2568)) }, Fingerprint { range: Range(362, 692), fp: EncodedCountingMonoid(16, SumMonoid(8638)) }, Fingerprint { range: Range(692, 984), fp: EncodedCountingMonoid(15, SumMonoid(12249)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 165), fp: EncodedCountingMonoid(10, SumMonoid(784)) }, Fingerprint { range: Range(165, 237), fp: EncodedCountingMonoid(10, SumMonoid(1988)) }, Fingerprint { range: Range(362, 549), fp: EncodedCountingMonoid(6, SumMonoid(2713)) }, Fingerprint { range: Range(549, 692), fp: EncodedCountingMonoid(5, SumMonoid(2913)) }, Fingerprint { range: Range(692, 863), fp: EncodedCountingMonoid(7, SumMonoid(5412)) }, Fingerprint { range: Range(863, 984), fp: EncodedCountingMonoid(6, SumMonoid(5366)) }], item_sets: [ItemSet { range: Range(237, 315), items: [264, 308], want_response: true }, ItemSet { range: Range(315, 362), items: [315, 328], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 71), fp: EncodedCountingMonoid(4, SumMonoid(131)) }, Fingerprint { range: Range(71, 165), fp: EncodedCountingMonoid(4, SumMonoid(412)) }, Fingerprint { range: Range(362, 482), fp: EncodedCountingMonoid(5, SumMonoid(2250)) }, Fingerprint { range: Range(482, 549), fp: EncodedCountingMonoid(5, SumMonoid(2521)) }, Fingerprint { range: Range(549, 678), fp: EncodedCountingMonoid(3, SumMonoid(1814)) }, Fingerprint { range: Range(678, 692), fp: EncodedCountingMonoid(3, SumMonoid(2053)) }, Fingerprint { range: Range(692, 786), fp: EncodedCountingMonoid(6, SumMonoid(4281)) }, Fingerprint { range: Range(786, 863), fp: EncodedCountingMonoid(5, SumMonoid(4133)) }], item_sets: [ItemSet { range: Range(237, 315), items: [237, 259, 260, 269, 274, 284], want_response: false }, ItemSet { range: Range(315, 362), items: [321, 322, 342], want_response: false }, ItemSet { range: Range(165, 237), items: [165, 226], want_response: true }, ItemSet { range: Range(863, 981), items: [929, 942], want_response: true }, ItemSet { range: Range(981, 984), items: [981, 983], want_response: true }], wants: [264, 308, 315, 328], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(71, 107), fp: EncodedCountingMonoid(4, SumMonoid(352)) }, Fingerprint { range: Range(107, 165), fp: EncodedCountingMonoid(3, SumMonoid(387)) }, Fingerprint { range: Range(549, 607), fp: EncodedCountingMonoid(3, SumMonoid(1685)) }], item_sets: [ItemSet { range: Range(165, 237), items: [165, 179, 189, 194, 199, 202, 210, 212, 217, 221], want_response: false }, ItemSet { range: Range(863, 981), items: [863, 864, 867, 870, 947, 955], want_response: false }, ItemSet { range: Range(981, 984), items: [], want_response: false }, ItemSet { range: Range(3, 36), items: [3, 6], want_response: true }, ItemSet { range: Range(36, 71), items: [36], want_response: true }, ItemSet { range: Range(362, 454), items: [362, 404], want_response: true }, ItemSet { range: Range(454, 482), items: [454], want_response: true }, ItemSet { range: Range(482, 511), items: [488, 494], want_response: true }, ItemSet { range: Range(511, 549), items: [511], want_response: true }, ItemSet { range: Range(607, 678), items: [607, 621], want_response: true }, ItemSet { range: Range(678, 692), items: [], want_response: true }, ItemSet { range: Range(692, 737), items: [695, 725], want_response: true }, ItemSet { range: Range(737, 786), items: [737, 784], want_response: true }, ItemSet { range: Range(786, 843), items: [787, 841], want_response: true }, ItemSet { range: Range(843, 863), items: [843], want_response: true }], wants: [237, 259, 260, 269, 274, 284, 321, 322, 342, 226, 929, 942, 981, 983], provide: [(264, true), (308, true), (315, true), (328, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 36), items: [3, 31], want_response: false }, ItemSet { range: Range(36, 71), items: [37, 60], want_response: false }, ItemSet { range: Range(362, 454), items: [408, 430], want_response: false }, ItemSet { range: Range(454, 482), items: [461, 470, 481], want_response: false }, ItemSet { range: Range(482, 511), items: [482, 487, 500], want_response: false }, ItemSet { range: Range(511, 549), items: [516, 536], want_response: false }, ItemSet { range: Range(607, 678), items: [633], want_response: false }, ItemSet { range: Range(678, 692), items: [678, 684, 691], want_response: false }, ItemSet { range: Range(692, 737), items: [692, 693, 704, 710, 734], want_response: false }, ItemSet { range: Range(737, 786), items: [748], want_response: false }, ItemSet { range: Range(786, 843), items: [786, 809, 828], want_response: false }, ItemSet { range: Range(843, 863), items: [852, 858], want_response: false }, ItemSet { range: Range(71, 107), items: [71, 104], want_response: true }, ItemSet { range: Range(107, 165), items: [115, 122], want_response: true }, ItemSet { range: Range(549, 607), items: [576, 605], want_response: true }], wants: [179, 189, 194, 199, 202, 210, 212, 217, 221, 863, 864, 867, 870, 947, 955, 6, 36, 362, 404, 454, 488, 494, 511, 607, 621, 695, 725, 737, 784, 787, 841, 843], provide: [(237, true), (259, true), (260, true), (269, true), (274, true), (284, true), (321, true), (322, true), (342, true), (226, true), (929, true), (942, true), (981, true), (983, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(71, 107), items: [80, 87, 88, 97], want_response: false }, ItemSet { range: Range(107, 165), items: [107, 139, 141], want_response: false }, ItemSet { range: Range(549, 607), items: [549, 566, 570], want_response: false }], wants: [31, 37, 60, 408, 430, 461, 470, 481, 482, 487, 500, 516, 536, 633, 678, 684, 691, 692, 693, 704, 710, 734, 748, 786, 809, 828, 852, 858, 71, 104, 115, 122, 576, 605], provide: [(179, true), (189, true), (194, true), (199, true), (202, true), (210, true), (212, true), (217, true), (221, true), (863, true), (864, true), (867, true), (870, true), (947, true), (955, true), (6, true), (36, true), (362, true), (404, true), (454, true), (488, true), (494, true), (511, true), (607, true), (621, true), (695, true), (725, true), (737, true), (784, true), (787, true), (841, true), (843, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [80, 87, 88, 97, 107, 139, 141, 549, 566, 570], provide: [(31, true), (37, true), (60, true), (408, true), (430, true), (461, true), (470, true), (481, true), (482, true), (487, true), (500, true), (516, true), (536, true), (633, true), (678, true), (684, true), (691, true), (692, true), (693, true), (704, true), (710, true), (734, true), (748, true), (786, true), (809, true), (828, true), (852, true), (858, true), (71, true), (104, true), (115, true), (122, true), (576, true), (605, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(80, true), (87, true), (88, true), (97, true), (107, true), (139, true), (141, true), (549, true), (566, true), (570, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 31, 37, 60, 71, 104, 115, 122, 165, 226, 237, 259, 260, 269, 274, 284, 321, 322, 342, 408, 430, 461, 470, 481, 482, 487, 500, 516, 536, 576, 605, 633, 678, 684, 691, 692, 693, 704, 710, 734, 748, 786, 809, 828, 852, 858, 929, 942, 981, 983} + [264, 308, 315, 328, 179, 189, 194, 199, 202, 210, 212, 217, 221, 863, 864, 867, 870, 947, 955, 6, 36, 362, 404, 454, 488, 494, 511, 607, 621, 695, 725, 737, 784, 787, 841, 843, 80, 87, 88, 97, 107, 139, 141, 549, 566, 570]
[INFO] [stdout] b all: {3, 6, 36, 80, 87, 88, 97, 107, 139, 141, 165, 179, 189, 194, 199, 202, 210, 212, 217, 221, 264, 308, 315, 328, 362, 404, 454, 488, 494, 511, 549, 566, 570, 607, 621, 695, 725, 737, 784, 787, 841, 843, 863, 864, 867, 870, 947, 955} + [237, 259, 260, 269, 274, 284, 321, 322, 342, 226, 929, 942, 981, 983, 31, 37, 60, 408, 430, 461, 470, 481, 482, 487, 500, 516, 536, 633, 678, 684, 691, 692, 693, 704, 710, 734, 748, 786, 809, 828, 852, 858, 71, 104, 115, 122, 576, 605]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 6, 31, 36, 37, 60, 71, 80, 87, 88, 97, 104, 107, 115, 122, 139, 141, 165, 179, 189, 194, 199, 202, 210, 212, 217, 221, 226, 237, 259, 260, 264, 269, 274, 284, 308, 315, 321, 322, 328, 342, 362, 404, 408, 430, 454, 461, 470, 481, 482, 487, 488, 494, 500, 511, 516, 536, 549, 566, 570, 576, 605, 607, 621, 633, 678, 684, 691, 692, 693, 695, 704, 710, 725, 734, 737, 748, 784, 786, 787, 809, 828, 841, 843, 852, 858, 863, 864, 867, 870, 929, 942, 947, 955, 981, 983]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 6, 31, 36, 37, 60, 71, 80, 87, 88, 97, 104, 107, 115, 122, 139, 141, 165, 179, 189, 194, 199, 202, 210, 212, 217, 221, 226, 237, 259, 260, 264, 269, 274, 284, 308, 315, 321, 322, 328, 342, 362, 404, 408, 430, 454, 461, 470, 481, 482, 487, 488, 494, 500, 511, 516, 536, 549, 566, 570, 576, 605, 607, 621, 633, 678, 684, 691, 692, 693, 695, 704, 710, 725, 734, 737, 748, 784, 786, 787, 809, 828, 841, 843, 852, 858, 863, 864, 867, 870, 929, 942, 947, 955, 981, 983], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 6, 31, 36, 37, 60, 71, 80, 87, 88, 97, 104, 107, 115, 122, 139, 141, 165, 179, 189, 194, 199, 202, 210, 212, 217, 221, 226, 237, 259, 260, 264, 269, 274, 284, 308, 315, 321, 322, 328, 342, 362, 404, 408, 430, 454, 461, 470, 481, 482, 487, 488, 494, 500, 511, 516, 536, 549, 566, 570, 576, 605, 607, 621, 633, 678, 684, 691, 692, 693, 695, 704, 710, 725, 734, 737, 748, 784, 786, 787, 809, 828, 841, 843, 852, 858, 863, 864, 867, 870, 929, 942, 947, 955, 981, 983], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {127, 133, 210, 300, 301, 305, 317, 398, 408, 441, 463, 485, 488, 692, 725, 779, 805, 871, 928, 938, 948}
[INFO] [stdout] b items: {30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122, 137, 142, 158, 182, 183, 184, 187, 190, 200, 204, 218, 225, 226, 234, 240, 246, 257, 260, 269, 282, 300, 304, 308, 310, 315, 329, 362, 391, 404, 409, 413, 418, 423, 452, 462, 472, 473, 474, 476, 480, 528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 693, 709, 711, 719, 745, 747, 750, 759, 764, 766, 779, 790, 808, 810, 817, 826, 844, 845, 856, 857, 868, 893, 894, 907, 912, 923, 946, 960, 968, 974}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(127, 949), fp: EncodedCountingMonoid(21, SumMonoid(11062)) }], item_sets: [ItemSet { range: Range(949, 127), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(127, 528), fp: EncodedCountingMonoid(40, SumMonoid(12199)) }, Fingerprint { range: Range(528, 949), fp: EncodedCountingMonoid(39, SumMonoid(29109)) }], item_sets: [ItemSet { range: Range(949, 127), items: [960, 968, 974, 30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(127, 398), fp: EncodedCountingMonoid(7, SumMonoid(1693)) }, Fingerprint { range: Range(398, 528), fp: EncodedCountingMonoid(6, SumMonoid(2683)) }, Fingerprint { range: Range(528, 871), fp: EncodedCountingMonoid(4, SumMonoid(3001)) }, Fingerprint { range: Range(871, 949), fp: EncodedCountingMonoid(4, SumMonoid(3685)) }], item_sets: [], wants: [960, 968, 974, 30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(127, 240), fp: EncodedCountingMonoid(14, SumMonoid(2670)) }, Fingerprint { range: Range(240, 398), fp: EncodedCountingMonoid(14, SumMonoid(4173)) }, Fingerprint { range: Range(398, 462), fp: EncodedCountingMonoid(6, SumMonoid(2519)) }, Fingerprint { range: Range(462, 528), fp: EncodedCountingMonoid(6, SumMonoid(2837)) }, Fingerprint { range: Range(528, 747), fp: EncodedCountingMonoid(17, SumMonoid(10748)) }, Fingerprint { range: Range(747, 871), fp: EncodedCountingMonoid(16, SumMonoid(12886)) }, Fingerprint { range: Range(871, 912), fp: EncodedCountingMonoid(3, SumMonoid(2694)) }, Fingerprint { range: Range(912, 949), fp: EncodedCountingMonoid(3, SumMonoid(2781)) }], item_sets: [], wants: [], provide: [(960, true), (968, true), (974, true), (30, true), (49, true), (56, true), (63, true), (65, true), (75, true), (92, true), (97, true), (100, true), (115, true), (122, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(127, 210), items: [127, 133], want_response: true }, ItemSet { range: Range(210, 240), items: [210], want_response: true }, ItemSet { range: Range(240, 305), items: [300, 301], want_response: true }, ItemSet { range: Range(305, 398), items: [305, 317], want_response: true }, ItemSet { range: Range(398, 441), items: [398, 408], want_response: true }, ItemSet { range: Range(441, 462), items: [441], want_response: true }, ItemSet { range: Range(462, 488), items: [463, 485], want_response: true }, ItemSet { range: Range(488, 528), items: [488], want_response: true }, ItemSet { range: Range(528, 747), items: [692, 725], want_response: true }, ItemSet { range: Range(747, 871), items: [779, 805], want_response: true }, ItemSet { range: Range(871, 912), items: [871], want_response: true }, ItemSet { range: Range(912, 948), items: [928, 938], want_response: true }, ItemSet { range: Range(948, 949), items: [948], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(127, 210), items: [137, 142, 158, 182, 183, 184, 187, 190, 200, 204], want_response: false }, ItemSet { range: Range(210, 240), items: [218, 225, 226, 234], want_response: false }, ItemSet { range: Range(240, 305), items: [240, 246, 257, 260, 269, 282, 300, 304], want_response: false }, ItemSet { range: Range(305, 398), items: [308, 310, 315, 329, 362, 391], want_response: false }, ItemSet { range: Range(398, 441), items: [404, 409, 413, 418, 423], want_response: false }, ItemSet { range: Range(441, 462), items: [452], want_response: false }, ItemSet { range: Range(462, 488), items: [462, 472, 473, 474, 476, 480], want_response: false }, ItemSet { range: Range(488, 528), items: [], want_response: false }, ItemSet { range: Range(528, 747), items: [528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 693, 709, 711, 719, 745], want_response: false }, ItemSet { range: Range(747, 871), items: [747, 750, 759, 764, 766, 779, 790, 808, 810, 817, 826, 844, 845, 856, 857, 868], want_response: false }, ItemSet { range: Range(871, 912), items: [893, 894, 907], want_response: false }, ItemSet { range: Range(912, 948), items: [912, 923, 946], want_response: false }, ItemSet { range: Range(948, 949), items: [], want_response: false }], wants: [127, 133, 210, 301, 305, 317, 398, 408, 441, 463, 485, 488, 692, 725, 805, 871, 928, 938, 948], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [137, 142, 158, 182, 183, 184, 187, 190, 200, 204, 218, 225, 226, 234, 240, 246, 257, 260, 269, 282, 304, 308, 310, 315, 329, 362, 391, 404, 409, 413, 418, 423, 452, 462, 472, 473, 474, 476, 480, 528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 693, 709, 711, 719, 745, 747, 750, 759, 764, 766, 790, 808, 810, 817, 826, 844, 845, 856, 857, 868, 893, 894, 907, 912, 923, 946], provide: [(127, true), (133, true), (210, true), (301, true), (305, true), (317, true), (398, true), (408, true), (441, true), (463, true), (485, true), (488, true), (692, true), (725, true), (805, true), (871, true), (928, true), (938, true), (948, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(137, true), (142, true), (158, true), (182, true), (183, true), (184, true), (187, true), (190, true), (200, true), (204, true), (218, true), (225, true), (226, true), (234, true), (240, true), (246, true), (257, true), (260, true), (269, true), (282, true), (304, true), (308, true), (310, true), (315, true), (329, true), (362, true), (391, true), (404, true), (409, true), (413, true), (418, true), (423, true), (452, true), (462, true), (472, true), (473, true), (474, true), (476, true), (480, true), (528, true), (535, true), (536, true), (547, true), (569, true), (589, true), (595, true), (614, true), (629, true), (669, true), (670, true), (690, true), (693, true), (709, true), (711, true), (719, true), (745, true), (747, true), (750, true), (759, true), (764, true), (766, true), (790, true), (808, true), (810, true), (817, true), (826, true), (844, true), (845, true), (856, true), (857, true), (868, true), (893, true), (894, true), (907, true), (912, true), (923, true), (946, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {127, 133, 210, 300, 301, 305, 317, 398, 408, 441, 463, 485, 488, 692, 725, 779, 805, 871, 928, 938, 948} + [960, 968, 974, 30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122, 137, 142, 158, 182, 183, 184, 187, 190, 200, 204, 218, 225, 226, 234, 240, 246, 257, 260, 269, 282, 304, 308, 310, 315, 329, 362, 391, 404, 409, 413, 418, 423, 452, 462, 472, 473, 474, 476, 480, 528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 693, 709, 711, 719, 745, 747, 750, 759, 764, 766, 790, 808, 810, 817, 826, 844, 845, 856, 857, 868, 893, 894, 907, 912, 923, 946]
[INFO] [stdout] b all: {30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122, 137, 142, 158, 182, 183, 184, 187, 190, 200, 204, 218, 225, 226, 234, 240, 246, 257, 260, 269, 282, 300, 304, 308, 310, 315, 329, 362, 391, 404, 409, 413, 418, 423, 452, 462, 472, 473, 474, 476, 480, 528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 693, 709, 711, 719, 745, 747, 750, 759, 764, 766, 779, 790, 808, 810, 817, 826, 844, 845, 856, 857, 868, 893, 894, 907, 912, 923, 946, 960, 968, 974} + [127, 133, 210, 301, 305, 317, 398, 408, 441, 463, 485, 488, 692, 725, 805, 871, 928, 938, 948]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122, 127, 133, 137, 142, 158, 182, 183, 184, 187, 190, 200, 204, 210, 218, 225, 226, 234, 240, 246, 257, 260, 269, 282, 300, 301, 304, 305, 308, 310, 315, 317, 329, 362, 391, 398, 404, 408, 409, 413, 418, 423, 441, 452, 462, 463, 472, 473, 474, 476, 480, 485, 488, 528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 692, 693, 709, 711, 719, 725, 745, 747, 750, 759, 764, 766, 779, 790, 805, 808, 810, 817, 826, 844, 845, 856, 857, 868, 871, 893, 894, 907, 912, 923, 928, 938, 946, 948, 960, 968, 974]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122, 127, 133, 137, 142, 158, 182, 183, 184, 187, 190, 200, 204, 210, 218, 225, 226, 234, 240, 246, 257, 260, 269, 282, 300, 301, 304, 305, 308, 310, 315, 317, 329, 362, 391, 398, 404, 408, 409, 413, 418, 423, 441, 452, 462, 463, 472, 473, 474, 476, 480, 485, 488, 528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 692, 693, 709, 711, 719, 725, 745, 747, 750, 759, 764, 766, 779, 790, 805, 808, 810, 817, 826, 844, 845, 856, 857, 868, 871, 893, 894, 907, 912, 923, 928, 938, 946, 948, 960, 968, 974], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [30, 49, 56, 63, 65, 75, 92, 97, 100, 115, 122, 127, 133, 137, 142, 158, 182, 183, 184, 187, 190, 200, 204, 210, 218, 225, 226, 234, 240, 246, 257, 260, 269, 282, 300, 301, 304, 305, 308, 310, 315, 317, 329, 362, 391, 398, 404, 408, 409, 413, 418, 423, 441, 452, 462, 463, 472, 473, 474, 476, 480, 485, 488, 528, 535, 536, 547, 569, 589, 595, 614, 629, 669, 670, 690, 692, 693, 709, 711, 719, 725, 745, 747, 750, 759, 764, 766, 779, 790, 805, 808, 810, 817, 826, 844, 845, 856, 857, 868, 871, 893, 894, 907, 912, 923, 928, 938, 946, 948, 960, 968, 974], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {371, 630, 821, 859, 935}
[INFO] [stdout] b items: {169, 292, 559}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(371, 936), fp: EncodedCountingMonoid(5, SumMonoid(3616)) }], item_sets: [ItemSet { range: Range(936, 371), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(936, 371), items: [169, 292], want_response: false }, ItemSet { range: Range(371, 936), items: [559], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(371, 936), items: [371, 630, 821, 859, 935], want_response: false }], wants: [169, 292, 559], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [371, 630, 821, 859, 935], provide: [(169, true), (292, true), (559, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(371, true), (630, true), (821, true), (859, true), (935, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {371, 630, 821, 859, 935} + [169, 292, 559]
[INFO] [stdout] b all: {169, 292, 559} + [371, 630, 821, 859, 935]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [169, 292, 371, 559, 630, 821, 859, 935]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [169, 292, 371, 559, 630, 821, 859, 935], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [169, 292, 371, 559, 630, 821, 859, 935], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 16, 17, 29, 35, 59, 67, 74, 76, 81, 130, 158, 186, 197, 201, 204, 207, 236, 260, 282, 291, 300, 309, 315, 332, 335, 342, 357, 367, 374, 376, 377, 381, 382, 420, 434, 447, 484, 493, 501, 524, 531, 544, 583, 588, 629, 673, 702, 727, 730, 747, 753, 764, 793, 794, 795, 822, 855, 865, 881, 890, 892, 895, 918, 924, 929, 931, 933, 952, 954, 968, 982, 984, 997}
[INFO] [stdout] b items: {1, 11, 20, 23, 36, 45, 60, 64, 68, 80, 91, 106, 110, 111, 141, 142, 147, 168, 170, 207, 209, 233, 259, 276, 288, 291, 307, 314, 319, 332, 341, 343, 356, 357, 365, 366, 384, 387, 393, 403, 412, 423, 431, 437, 438, 452, 461, 473, 476, 517, 530, 553, 558, 569, 572, 580, 601, 620, 622, 624, 662, 676, 682, 686, 695, 709, 715, 718, 733, 748, 790, 794, 802, 820, 841, 886, 887, 893, 896, 901, 907, 908, 912, 921, 934, 942, 956, 959, 973}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 998), fp: EncodedCountingMonoid(74, SumMonoid(37590)) }], item_sets: [ItemSet { range: Range(998, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 452), fp: EncodedCountingMonoid(44, SumMonoid(10464)) }, Fingerprint { range: Range(452, 998), fp: EncodedCountingMonoid(44, SumMonoid(32154)) }], item_sets: [ItemSet { range: Range(998, 9), items: [1], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 282), fp: EncodedCountingMonoid(19, SumMonoid(2242)) }, Fingerprint { range: Range(282, 452), fp: EncodedCountingMonoid(18, SumMonoid(6421)) }, Fingerprint { range: Range(452, 822), fp: EncodedCountingMonoid(19, SumMonoid(12355)) }, Fingerprint { range: Range(822, 998), fp: EncodedCountingMonoid(18, SumMonoid(16572)) }], item_sets: [], wants: [1], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 111), fp: EncodedCountingMonoid(12, SumMonoid(714)) }, Fingerprint { range: Range(111, 282), fp: EncodedCountingMonoid(11, SumMonoid(2063)) }, Fingerprint { range: Range(282, 366), fp: EncodedCountingMonoid(11, SumMonoid(3613)) }, Fingerprint { range: Range(366, 452), fp: EncodedCountingMonoid(10, SumMonoid(4074)) }, Fingerprint { range: Range(452, 662), fp: EncodedCountingMonoid(15, SumMonoid(8208)) }, Fingerprint { range: Range(662, 822), fp: EncodedCountingMonoid(14, SumMonoid(10230)) }, Fingerprint { range: Range(822, 912), fp: EncodedCountingMonoid(8, SumMonoid(7119)) }, Fingerprint { range: Range(912, 998), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(1, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 59), fp: EncodedCountingMonoid(5, SumMonoid(106)) }, Fingerprint { range: Range(59, 111), fp: EncodedCountingMonoid(5, SumMonoid(357)) }, Fingerprint { range: Range(111, 204), fp: EncodedCountingMonoid(5, SumMonoid(872)) }, Fingerprint { range: Range(204, 282), fp: EncodedCountingMonoid(4, SumMonoid(907)) }, Fingerprint { range: Range(282, 332), fp: EncodedCountingMonoid(5, SumMonoid(1497)) }, Fingerprint { range: Range(332, 366), fp: EncodedCountingMonoid(4, SumMonoid(1366)) }, Fingerprint { range: Range(366, 382), fp: EncodedCountingMonoid(5, SumMonoid(1875)) }, Fingerprint { range: Range(382, 452), fp: EncodedCountingMonoid(4, SumMonoid(1683)) }, Fingerprint { range: Range(452, 544), fp: EncodedCountingMonoid(5, SumMonoid(2533)) }, Fingerprint { range: Range(544, 662), fp: EncodedCountingMonoid(4, SumMonoid(2344)) }, Fingerprint { range: Range(662, 753), fp: EncodedCountingMonoid(5, SumMonoid(3579)) }, Fingerprint { range: Range(753, 822), fp: EncodedCountingMonoid(5, SumMonoid(3899)) }, Fingerprint { range: Range(822, 890), fp: EncodedCountingMonoid(4, SumMonoid(3423)) }, Fingerprint { range: Range(890, 912), fp: EncodedCountingMonoid(3, SumMonoid(2677)) }, Fingerprint { range: Range(912, 954), fp: EncodedCountingMonoid(6, SumMonoid(5587)) }, Fingerprint { range: Range(954, 998), fp: EncodedCountingMonoid(5, SumMonoid(4885)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 36), fp: EncodedCountingMonoid(3, SumMonoid(54)) }, Fingerprint { range: Range(59, 91), fp: EncodedCountingMonoid(4, SumMonoid(272)) }, Fingerprint { range: Range(91, 111), fp: EncodedCountingMonoid(3, SumMonoid(307)) }, Fingerprint { range: Range(111, 147), fp: EncodedCountingMonoid(3, SumMonoid(394)) }, Fingerprint { range: Range(147, 204), fp: EncodedCountingMonoid(3, SumMonoid(485)) }, Fingerprint { range: Range(204, 259), fp: EncodedCountingMonoid(3, SumMonoid(649)) }, Fingerprint { range: Range(282, 314), fp: EncodedCountingMonoid(3, SumMonoid(886)) }, Fingerprint { range: Range(332, 356), fp: EncodedCountingMonoid(3, SumMonoid(1016)) }, Fingerprint { range: Range(356, 366), fp: EncodedCountingMonoid(3, SumMonoid(1078)) }, Fingerprint { range: Range(382, 423), fp: EncodedCountingMonoid(5, SumMonoid(1979)) }, Fingerprint { range: Range(423, 452), fp: EncodedCountingMonoid(4, SumMonoid(1729)) }, Fingerprint { range: Range(452, 476), fp: EncodedCountingMonoid(3, SumMonoid(1386)) }, Fingerprint { range: Range(476, 544), fp: EncodedCountingMonoid(3, SumMonoid(1523)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(5, SumMonoid(2832)) }, Fingerprint { range: Range(601, 662), fp: EncodedCountingMonoid(4, SumMonoid(2467)) }, Fingerprint { range: Range(662, 709), fp: EncodedCountingMonoid(5, SumMonoid(3401)) }, Fingerprint { range: Range(709, 753), fp: EncodedCountingMonoid(5, SumMonoid(3623)) }, Fingerprint { range: Range(890, 907), fp: EncodedCountingMonoid(3, SumMonoid(2690)) }], item_sets: [ItemSet { range: Range(36, 59), items: [36, 45], want_response: true }, ItemSet { range: Range(259, 282), items: [259, 276], want_response: true }, ItemSet { range: Range(314, 332), items: [314, 319], want_response: true }, ItemSet { range: Range(366, 382), items: [366], want_response: true }, ItemSet { range: Range(753, 802), items: [790, 794], want_response: true }, ItemSet { range: Range(802, 822), items: [802, 820], want_response: true }, ItemSet { range: Range(822, 887), items: [841, 886], want_response: true }, ItemSet { range: Range(887, 890), items: [887], want_response: true }, ItemSet { range: Range(907, 912), items: [907, 908], want_response: true }, ItemSet { range: Range(912, 934), items: [912, 921], want_response: true }, ItemSet { range: Range(934, 954), items: [934, 942], want_response: true }, ItemSet { range: Range(954, 973), items: [956, 959], want_response: true }, ItemSet { range: Range(973, 998), items: [973], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 29), fp: EncodedCountingMonoid(3, SumMonoid(42)) }, Fingerprint { range: Range(59, 76), fp: EncodedCountingMonoid(3, SumMonoid(200)) }, Fingerprint { range: Range(476, 524), fp: EncodedCountingMonoid(3, SumMonoid(1478)) }], item_sets: [ItemSet { range: Range(36, 59), items: [], want_response: false }, ItemSet { range: Range(259, 282), items: [260], want_response: false }, ItemSet { range: Range(314, 332), items: [315], want_response: false }, ItemSet { range: Range(366, 382), items: [367, 374, 376, 377, 381], want_response: false }, ItemSet { range: Range(753, 802), items: [753, 764, 793, 794, 795], want_response: false }, ItemSet { range: Range(802, 822), items: [], want_response: false }, ItemSet { range: Range(822, 887), items: [822, 855, 865, 881], want_response: false }, ItemSet { range: Range(887, 890), items: [], want_response: false }, ItemSet { range: Range(907, 912), items: [], want_response: false }, ItemSet { range: Range(912, 934), items: [918, 924, 929, 931, 933], want_response: false }, ItemSet { range: Range(934, 954), items: [952], want_response: false }, ItemSet { range: Range(954, 973), items: [954, 968], want_response: false }, ItemSet { range: Range(973, 998), items: [982, 984, 997], want_response: false }, ItemSet { range: Range(29, 36), items: [29, 35], want_response: true }, ItemSet { range: Range(76, 91), items: [76, 81], want_response: true }, ItemSet { range: Range(91, 111), items: [], want_response: true }, ItemSet { range: Range(111, 147), items: [130], want_response: true }, ItemSet { range: Range(147, 197), items: [158, 186], want_response: true }, ItemSet { range: Range(197, 204), items: [197, 201], want_response: true }, ItemSet { range: Range(204, 236), items: [204, 207], want_response: true }, ItemSet { range: Range(236, 259), items: [236], want_response: true }, ItemSet { range: Range(282, 300), items: [282, 291], want_response: true }, ItemSet { range: Range(300, 314), items: [300, 309], want_response: true }, ItemSet { range: Range(332, 342), items: [332, 335], want_response: true }, ItemSet { range: Range(342, 356), items: [342], want_response: true }, ItemSet { range: Range(356, 366), items: [357], want_response: true }, ItemSet { range: Range(382, 423), items: [382, 420], want_response: true }, ItemSet { range: Range(423, 452), items: [434, 447], want_response: true }, ItemSet { range: Range(452, 476), items: [], want_response: true }, ItemSet { range: Range(524, 544), items: [524, 531], want_response: true }, ItemSet { range: Range(544, 588), items: [544, 583], want_response: true }, ItemSet { range: Range(588, 601), items: [588], want_response: true }, ItemSet { range: Range(601, 662), items: [629], want_response: true }, ItemSet { range: Range(662, 709), items: [673, 702], want_response: true }, ItemSet { range: Range(709, 747), items: [727, 730], want_response: true }, ItemSet { range: Range(747, 753), items: [747], want_response: true }, ItemSet { range: Range(890, 895), items: [890, 892], want_response: true }, ItemSet { range: Range(895, 907), items: [895], want_response: true }], wants: [36, 45, 259, 276, 314, 319, 366, 790, 802, 820, 841, 886, 887, 907, 908, 912, 921, 934, 942, 956, 959, 973], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(29, 36), items: [], want_response: false }, ItemSet { range: Range(76, 91), items: [80], want_response: false }, ItemSet { range: Range(91, 111), items: [91, 106, 110], want_response: false }, ItemSet { range: Range(111, 147), items: [111, 141, 142], want_response: false }, ItemSet { range: Range(147, 197), items: [147, 168, 170], want_response: false }, ItemSet { range: Range(197, 204), items: [], want_response: false }, ItemSet { range: Range(204, 236), items: [207, 209, 233], want_response: false }, ItemSet { range: Range(236, 259), items: [], want_response: false }, ItemSet { range: Range(282, 300), items: [288, 291], want_response: false }, ItemSet { range: Range(300, 314), items: [307], want_response: false }, ItemSet { range: Range(332, 342), items: [332, 341], want_response: false }, ItemSet { range: Range(342, 356), items: [343], want_response: false }, ItemSet { range: Range(356, 366), items: [356, 357, 365], want_response: false }, ItemSet { range: Range(382, 423), items: [384, 387, 393, 403, 412], want_response: false }, ItemSet { range: Range(423, 452), items: [423, 431, 437, 438], want_response: false }, ItemSet { range: Range(452, 476), items: [452, 461, 473], want_response: false }, ItemSet { range: Range(524, 544), items: [530], want_response: false }, ItemSet { range: Range(544, 588), items: [553, 558, 569, 572, 580], want_response: false }, ItemSet { range: Range(588, 601), items: [], want_response: false }, ItemSet { range: Range(601, 662), items: [601, 620, 622, 624], want_response: false }, ItemSet { range: Range(662, 709), items: [662, 676, 682, 686, 695], want_response: false }, ItemSet { range: Range(709, 747), items: [709, 715, 718, 733], want_response: false }, ItemSet { range: Range(747, 753), items: [748], want_response: false }, ItemSet { range: Range(890, 895), items: [893], want_response: false }, ItemSet { range: Range(895, 907), items: [896, 901], want_response: false }, ItemSet { range: Range(9, 23), items: [11, 20], want_response: true }, ItemSet { range: Range(23, 29), items: [23], want_response: true }, ItemSet { range: Range(59, 68), items: [60, 64], want_response: true }, ItemSet { range: Range(68, 76), items: [68], want_response: true }, ItemSet { range: Range(476, 524), items: [476, 517], want_response: true }], wants: [260, 315, 367, 374, 376, 377, 381, 753, 764, 793, 795, 822, 855, 865, 881, 918, 924, 929, 931, 933, 952, 954, 968, 982, 984, 997, 29, 35, 76, 81, 130, 158, 186, 197, 201, 204, 236, 282, 300, 309, 335, 342, 382, 420, 434, 447, 524, 531, 544, 583, 588, 629, 673, 702, 727, 730, 747, 890, 892, 895], provide: [(36, true), (45, true), (259, true), (276, true), (314, true), (319, true), (366, true), (790, true), (802, true), (820, true), (841, true), (886, true), (887, true), (907, true), (908, true), (912, true), (921, true), (934, true), (942, true), (956, true), (959, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 23), items: [9, 16, 17], want_response: false }, ItemSet { range: Range(23, 29), items: [], want_response: false }, ItemSet { range: Range(59, 68), items: [59, 67], want_response: false }, ItemSet { range: Range(68, 76), items: [74], want_response: false }, ItemSet { range: Range(476, 524), items: [484, 493, 501], want_response: false }], wants: [80, 91, 106, 110, 111, 141, 142, 147, 168, 170, 209, 233, 288, 307, 341, 343, 356, 365, 384, 387, 393, 403, 412, 423, 431, 437, 438, 452, 461, 473, 530, 553, 558, 569, 572, 580, 601, 620, 622, 624, 662, 676, 682, 686, 695, 709, 715, 718, 733, 748, 893, 896, 901, 11, 20, 23, 60, 64, 68, 476, 517], provide: [(260, true), (315, true), (367, true), (374, true), (376, true), (377, true), (381, true), (753, true), (764, true), (793, true), (795, true), (822, true), (855, true), (865, true), (881, true), (918, true), (924, true), (929, true), (931, true), (933, true), (952, true), (954, true), (968, true), (982, true), (984, true), (997, true), (29, true), (35, true), (76, true), (81, true), (130, true), (158, true), (186, true), (197, true), (201, true), (204, true), (236, true), (282, true), (300, true), (309, true), (335, true), (342, true), (382, true), (420, true), (434, true), (447, true), (524, true), (531, true), (544, true), (583, true), (588, true), (629, true), (673, true), (702, true), (727, true), (730, true), (747, true), (890, true), (892, true), (895, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [9, 16, 17, 59, 67, 74, 484, 493, 501], provide: [(80, true), (91, true), (106, true), (110, true), (111, true), (141, true), (142, true), (147, true), (168, true), (170, true), (209, true), (233, true), (288, true), (307, true), (341, true), (343, true), (356, true), (365, true), (384, true), (387, true), (393, true), (403, true), (412, true), (423, true), (431, true), (437, true), (438, true), (452, true), (461, true), (473, true), (530, true), (553, true), (558, true), (569, true), (572, true), (580, true), (601, true), (620, true), (622, true), (624, true), (662, true), (676, true), (682, true), (686, true), (695, true), (709, true), (715, true), (718, true), (733, true), (748, true), (893, true), (896, true), (901, true), (11, true), (20, true), (23, true), (60, true), (64, true), (68, true), (476, true), (517, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(9, true), (16, true), (17, true), (59, true), (67, true), (74, true), (484, true), (493, true), (501, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 16, 17, 29, 35, 59, 67, 74, 76, 81, 130, 158, 186, 197, 201, 204, 207, 236, 260, 282, 291, 300, 309, 315, 332, 335, 342, 357, 367, 374, 376, 377, 381, 382, 420, 434, 447, 484, 493, 501, 524, 531, 544, 583, 588, 629, 673, 702, 727, 730, 747, 753, 764, 793, 794, 795, 822, 855, 865, 881, 890, 892, 895, 918, 924, 929, 931, 933, 952, 954, 968, 982, 984, 997} + [1, 36, 45, 259, 276, 314, 319, 366, 790, 802, 820, 841, 886, 887, 907, 908, 912, 921, 934, 942, 956, 959, 973, 80, 91, 106, 110, 111, 141, 142, 147, 168, 170, 209, 233, 288, 307, 341, 343, 356, 365, 384, 387, 393, 403, 412, 423, 431, 437, 438, 452, 461, 473, 530, 553, 558, 569, 572, 580, 601, 620, 622, 624, 662, 676, 682, 686, 695, 709, 715, 718, 733, 748, 893, 896, 901, 11, 20, 23, 60, 64, 68, 476, 517]
[INFO] [stdout] b all: {1, 11, 20, 23, 36, 45, 60, 64, 68, 80, 91, 106, 110, 111, 141, 142, 147, 168, 170, 207, 209, 233, 259, 276, 288, 291, 307, 314, 319, 332, 341, 343, 356, 357, 365, 366, 384, 387, 393, 403, 412, 423, 431, 437, 438, 452, 461, 473, 476, 517, 530, 553, 558, 569, 572, 580, 601, 620, 622, 624, 662, 676, 682, 686, 695, 709, 715, 718, 733, 748, 790, 794, 802, 820, 841, 886, 887, 893, 896, 901, 907, 908, 912, 921, 934, 942, 956, 959, 973} + [260, 315, 367, 374, 376, 377, 381, 753, 764, 793, 795, 822, 855, 865, 881, 918, 924, 929, 931, 933, 952, 954, 968, 982, 984, 997, 29, 35, 76, 81, 130, 158, 186, 197, 201, 204, 236, 282, 300, 309, 335, 342, 382, 420, 434, 447, 524, 531, 544, 583, 588, 629, 673, 702, 727, 730, 747, 890, 892, 895, 9, 16, 17, 59, 67, 74, 484, 493, 501]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 9, 11, 16, 17, 20, 23, 29, 35, 36, 45, 59, 60, 64, 67, 68, 74, 76, 80, 81, 91, 106, 110, 111, 130, 141, 142, 147, 158, 168, 170, 186, 197, 201, 204, 207, 209, 233, 236, 259, 260, 276, 282, 288, 291, 300, 307, 309, 314, 315, 319, 332, 335, 341, 342, 343, 356, 357, 365, 366, 367, 374, 376, 377, 381, 382, 384, 387, 393, 403, 412, 420, 423, 431, 434, 437, 438, 447, 452, 461, 473, 476, 484, 493, 501, 517, 524, 530, 531, 544, 553, 558, 569, 572, 580, 583, 588, 601, 620, 622, 624, 629, 662, 673, 676, 682, 686, 695, 702, 709, 715, 718, 727, 730, 733, 747, 748, 753, 764, 790, 793, 794, 795, 802, 820, 822, 841, 855, 865, 881, 886, 887, 890, 892, 893, 895, 896, 901, 907, 908, 912, 918, 921, 924, 929, 931, 933, 934, 942, 952, 954, 956, 959, 968, 973, 982, 984, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 9, 11, 16, 17, 20, 23, 29, 35, 36, 45, 59, 60, 64, 67, 68, 74, 76, 80, 81, 91, 106, 110, 111, 130, 141, 142, 147, 158, 168, 170, 186, 197, 201, 204, 207, 209, 233, 236, 259, 260, 276, 282, 288, 291, 300, 307, 309, 314, 315, 319, 332, 335, 341, 342, 343, 356, 357, 365, 366, 367, 374, 376, 377, 381, 382, 384, 387, 393, 403, 412, 420, 423, 431, 434, 437, 438, 447, 452, 461, 473, 476, 484, 493, 501, 517, 524, 530, 531, 544, 553, 558, 569, 572, 580, 583, 588, 601, 620, 622, 624, 629, 662, 673, 676, 682, 686, 695, 702, 709, 715, 718, 727, 730, 733, 747, 748, 753, 764, 790, 793, 794, 795, 802, 820, 822, 841, 855, 865, 881, 886, 887, 890, 892, 893, 895, 896, 901, 907, 908, 912, 918, 921, 924, 929, 931, 933, 934, 942, 952, 954, 956, 959, 968, 973, 982, 984, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 9, 11, 16, 17, 20, 23, 29, 35, 36, 45, 59, 60, 64, 67, 68, 74, 76, 80, 81, 91, 106, 110, 111, 130, 141, 142, 147, 158, 168, 170, 186, 197, 201, 204, 207, 209, 233, 236, 259, 260, 276, 282, 288, 291, 300, 307, 309, 314, 315, 319, 332, 335, 341, 342, 343, 356, 357, 365, 366, 367, 374, 376, 377, 381, 382, 384, 387, 393, 403, 412, 420, 423, 431, 434, 437, 438, 447, 452, 461, 473, 476, 484, 493, 501, 517, 524, 530, 531, 544, 553, 558, 569, 572, 580, 583, 588, 601, 620, 622, 624, 629, 662, 673, 676, 682, 686, 695, 702, 709, 715, 718, 727, 730, 733, 747, 748, 753, 764, 790, 793, 794, 795, 802, 820, 822, 841, 855, 865, 881, 886, 887, 890, 892, 893, 895, 896, 901, 907, 908, 912, 918, 921, 924, 929, 931, 933, 934, 942, 952, 954, 956, 959, 968, 973, 982, 984, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {15, 22, 29, 60, 146, 152, 229, 252, 272, 281, 283, 284, 291, 302, 322, 330, 492, 508, 527, 553, 583, 588, 607, 627, 635, 646, 680, 711, 715, 717, 737, 758, 779, 801, 806, 809, 852, 864, 909, 953, 964, 983, 986, 989}
[INFO] [stdout] b items: {3, 20, 21, 27, 52, 54, 86, 102, 148, 159, 163, 183, 199, 331, 418, 427, 493, 511, 523, 531, 592, 595, 608, 637, 660, 754, 771, 787, 805, 813, 825, 838, 841, 848, 854, 878, 903, 917, 922, 967, 970}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 990), fp: EncodedCountingMonoid(44, SumMonoid(24049)) }], item_sets: [ItemSet { range: Range(990, 15), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 595), fp: EncodedCountingMonoid(20, SumMonoid(5040)) }, Fingerprint { range: Range(595, 990), fp: EncodedCountingMonoid(20, SumMonoid(16193)) }], item_sets: [ItemSet { range: Range(990, 15), items: [3], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 284), fp: EncodedCountingMonoid(11, SumMonoid(1741)) }, Fingerprint { range: Range(284, 595), fp: EncodedCountingMonoid(11, SumMonoid(4780)) }, Fingerprint { range: Range(595, 801), fp: EncodedCountingMonoid(11, SumMonoid(7612)) }, Fingerprint { range: Range(801, 990), fp: EncodedCountingMonoid(11, SumMonoid(9916)) }], item_sets: [], wants: [3], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 102), fp: EncodedCountingMonoid(6, SumMonoid(260)) }, Fingerprint { range: Range(102, 284), fp: EncodedCountingMonoid(6, SumMonoid(954)) }, Fingerprint { range: Range(284, 511), fp: EncodedCountingMonoid(4, SumMonoid(1669)) }, Fingerprint { range: Range(511, 595), fp: EncodedCountingMonoid(4, SumMonoid(2157)) }, Fingerprint { range: Range(595, 754), fp: EncodedCountingMonoid(4, SumMonoid(2500)) }, Fingerprint { range: Range(754, 801), fp: EncodedCountingMonoid(3, SumMonoid(2312)) }, Fingerprint { range: Range(801, 878), fp: EncodedCountingMonoid(7, SumMonoid(5824)) }, Fingerprint { range: Range(878, 990), fp: EncodedCountingMonoid(6, SumMonoid(5557)) }], item_sets: [], wants: [], provide: [(3, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(102, 272), fp: EncodedCountingMonoid(4, SumMonoid(779)) }, Fingerprint { range: Range(272, 284), fp: EncodedCountingMonoid(3, SumMonoid(836)) }, Fingerprint { range: Range(284, 330), fp: EncodedCountingMonoid(4, SumMonoid(1199)) }, Fingerprint { range: Range(330, 511), fp: EncodedCountingMonoid(3, SumMonoid(1330)) }, Fingerprint { range: Range(595, 711), fp: EncodedCountingMonoid(5, SumMonoid(3195)) }, Fingerprint { range: Range(711, 754), fp: EncodedCountingMonoid(4, SumMonoid(2880)) }, Fingerprint { range: Range(801, 852), fp: EncodedCountingMonoid(3, SumMonoid(2416)) }, Fingerprint { range: Range(878, 983), fp: EncodedCountingMonoid(3, SumMonoid(2826)) }, Fingerprint { range: Range(983, 990), fp: EncodedCountingMonoid(3, SumMonoid(2958)) }], item_sets: [ItemSet { range: Range(15, 29), items: [15, 22], want_response: true }, ItemSet { range: Range(29, 102), items: [29, 60], want_response: true }, ItemSet { range: Range(511, 583), items: [527, 553], want_response: true }, ItemSet { range: Range(583, 595), items: [583, 588], want_response: true }, ItemSet { range: Range(754, 801), items: [758, 779], want_response: true }, ItemSet { range: Range(852, 878), items: [852, 864], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(102, 163), fp: EncodedCountingMonoid(3, SumMonoid(409)) }, Fingerprint { range: Range(163, 272), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(801, 838), fp: EncodedCountingMonoid(3, SumMonoid(2443)) }, Fingerprint { range: Range(838, 852), fp: EncodedCountingMonoid(3, SumMonoid(2527)) }, Fingerprint { range: Range(878, 922), fp: EncodedCountingMonoid(3, SumMonoid(2698)) }, Fingerprint { range: Range(922, 983), fp: EncodedCountingMonoid(3, SumMonoid(2859)) }], item_sets: [ItemSet { range: Range(15, 29), items: [20, 21, 27], want_response: false }, ItemSet { range: Range(29, 102), items: [52, 54, 86], want_response: false }, ItemSet { range: Range(511, 583), items: [511, 523, 531], want_response: false }, ItemSet { range: Range(583, 595), items: [592], want_response: false }, ItemSet { range: Range(754, 801), items: [754, 771, 787], want_response: false }, ItemSet { range: Range(852, 878), items: [854], want_response: false }, ItemSet { range: Range(272, 284), items: [], want_response: true }, ItemSet { range: Range(284, 330), items: [], want_response: true }, ItemSet { range: Range(330, 427), items: [331, 418], want_response: true }, ItemSet { range: Range(427, 511), items: [427, 493], want_response: true }, ItemSet { range: Range(595, 637), items: [595, 608], want_response: true }, ItemSet { range: Range(637, 711), items: [637, 660], want_response: true }, ItemSet { range: Range(711, 754), items: [], want_response: true }, ItemSet { range: Range(983, 990), items: [], want_response: true }], wants: [15, 22, 29, 60, 527, 553, 583, 588, 758, 779, 852, 864], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(272, 284), items: [272, 281, 283], want_response: false }, ItemSet { range: Range(284, 330), items: [284, 291, 302, 322], want_response: false }, ItemSet { range: Range(330, 427), items: [330], want_response: false }, ItemSet { range: Range(427, 511), items: [492, 508], want_response: false }, ItemSet { range: Range(595, 637), items: [607, 627, 635], want_response: false }, ItemSet { range: Range(637, 711), items: [646, 680], want_response: false }, ItemSet { range: Range(711, 754), items: [711, 715, 717, 737], want_response: false }, ItemSet { range: Range(983, 990), items: [983, 986, 989], want_response: false }, ItemSet { range: Range(102, 163), items: [146, 152], want_response: true }, ItemSet { range: Range(163, 272), items: [229, 252], want_response: true }, ItemSet { range: Range(801, 809), items: [801, 806], want_response: true }, ItemSet { range: Range(809, 838), items: [809], want_response: true }, ItemSet { range: Range(838, 852), items: [], want_response: true }, ItemSet { range: Range(878, 922), items: [909], want_response: true }, ItemSet { range: Range(922, 983), items: [953, 964], want_response: true }], wants: [20, 21, 27, 52, 54, 86, 511, 523, 531, 592, 754, 771, 787, 854, 331, 418, 427, 493, 595, 608, 637, 660], provide: [(15, true), (22, true), (29, true), (60, true), (527, true), (553, true), (583, true), (588, true), (758, true), (779, true), (852, true), (864, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(102, 163), items: [102, 148, 159], want_response: false }, ItemSet { range: Range(163, 272), items: [163, 183, 199], want_response: false }, ItemSet { range: Range(801, 809), items: [805], want_response: false }, ItemSet { range: Range(809, 838), items: [813, 825], want_response: false }, ItemSet { range: Range(838, 852), items: [838, 841, 848], want_response: false }, ItemSet { range: Range(878, 922), items: [878, 903, 917], want_response: false }, ItemSet { range: Range(922, 983), items: [922, 967, 970], want_response: false }], wants: [272, 281, 283, 284, 291, 302, 322, 330, 492, 508, 607, 627, 635, 646, 680, 711, 715, 717, 737, 983, 986, 989, 146, 152, 229, 252, 801, 806, 809, 909, 953, 964], provide: [(20, true), (21, true), (27, true), (52, true), (54, true), (86, true), (511, true), (523, true), (531, true), (592, true), (754, true), (771, true), (787, true), (854, true), (331, true), (418, true), (427, true), (493, true), (595, true), (608, true), (637, true), (660, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 148, 159, 163, 183, 199, 805, 813, 825, 838, 841, 848, 878, 903, 917, 922, 967, 970], provide: [(272, true), (281, true), (283, true), (284, true), (291, true), (302, true), (322, true), (330, true), (492, true), (508, true), (607, true), (627, true), (635, true), (646, true), (680, true), (711, true), (715, true), (717, true), (737, true), (983, true), (986, true), (989, true), (146, true), (152, true), (229, true), (252, true), (801, true), (806, true), (809, true), (909, true), (953, true), (964, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (148, true), (159, true), (163, true), (183, true), (199, true), (805, true), (813, true), (825, true), (838, true), (841, true), (848, true), (878, true), (903, true), (917, true), (922, true), (967, true), (970, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {15, 22, 29, 60, 146, 152, 229, 252, 272, 281, 283, 284, 291, 302, 322, 330, 492, 508, 527, 553, 583, 588, 607, 627, 635, 646, 680, 711, 715, 717, 737, 758, 779, 801, 806, 809, 852, 864, 909, 953, 964, 983, 986, 989} + [3, 20, 21, 27, 52, 54, 86, 511, 523, 531, 592, 754, 771, 787, 854, 331, 418, 427, 493, 595, 608, 637, 660, 102, 148, 159, 163, 183, 199, 805, 813, 825, 838, 841, 848, 878, 903, 917, 922, 967, 970]
[INFO] [stdout] b all: {3, 20, 21, 27, 52, 54, 86, 102, 148, 159, 163, 183, 199, 331, 418, 427, 493, 511, 523, 531, 592, 595, 608, 637, 660, 754, 771, 787, 805, 813, 825, 838, 841, 848, 854, 878, 903, 917, 922, 967, 970} + [15, 22, 29, 60, 527, 553, 583, 588, 758, 779, 852, 864, 272, 281, 283, 284, 291, 302, 322, 330, 492, 508, 607, 627, 635, 646, 680, 711, 715, 717, 737, 983, 986, 989, 146, 152, 229, 252, 801, 806, 809, 909, 953, 964]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 15, 20, 21, 22, 27, 29, 52, 54, 60, 86, 102, 146, 148, 152, 159, 163, 183, 199, 229, 252, 272, 281, 283, 284, 291, 302, 322, 330, 331, 418, 427, 492, 493, 508, 511, 523, 527, 531, 553, 583, 588, 592, 595, 607, 608, 627, 635, 637, 646, 660, 680, 711, 715, 717, 737, 754, 758, 771, 779, 787, 801, 805, 806, 809, 813, 825, 838, 841, 848, 852, 854, 864, 878, 903, 909, 917, 922, 953, 964, 967, 970, 983, 986, 989]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 15, 20, 21, 22, 27, 29, 52, 54, 60, 86, 102, 146, 148, 152, 159, 163, 183, 199, 229, 252, 272, 281, 283, 284, 291, 302, 322, 330, 331, 418, 427, 492, 493, 508, 511, 523, 527, 531, 553, 583, 588, 592, 595, 607, 608, 627, 635, 637, 646, 660, 680, 711, 715, 717, 737, 754, 758, 771, 779, 787, 801, 805, 806, 809, 813, 825, 838, 841, 848, 852, 854, 864, 878, 903, 909, 917, 922, 953, 964, 967, 970, 983, 986, 989], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 15, 20, 21, 22, 27, 29, 52, 54, 60, 86, 102, 146, 148, 152, 159, 163, 183, 199, 229, 252, 272, 281, 283, 284, 291, 302, 322, 330, 331, 418, 427, 492, 493, 508, 511, 523, 527, 531, 553, 583, 588, 592, 595, 607, 608, 627, 635, 637, 646, 660, 680, 711, 715, 717, 737, 754, 758, 771, 779, 787, 801, 805, 806, 809, 813, 825, 838, 841, 848, 852, 854, 864, 878, 903, 909, 917, 922, 953, 964, 967, 970, 983, 986, 989], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {136, 154, 403}
[INFO] [stdout] b items: {6, 17, 36, 58, 60, 88, 136, 140, 160, 173, 208, 243, 246, 254, 276, 279, 287, 294, 302, 303, 304, 316, 355, 356, 380, 397, 405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(136, 404), fp: EncodedCountingMonoid(3, SumMonoid(693)) }], item_sets: [ItemSet { range: Range(404, 136), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 287), fp: EncodedCountingMonoid(10, SumMonoid(2115)) }, Fingerprint { range: Range(287, 404), fp: EncodedCountingMonoid(10, SumMonoid(3294)) }], item_sets: [ItemSet { range: Range(404, 136), items: [405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988, 6, 17, 36, 58, 60, 88], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 287), items: [136, 154], want_response: true }, ItemSet { range: Range(287, 404), items: [403], want_response: true }], wants: [405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988, 6, 17, 36, 58, 60, 88], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 287), items: [136, 140, 160, 173, 208, 243, 246, 254, 276, 279], want_response: false }, ItemSet { range: Range(287, 404), items: [287, 294, 302, 303, 304, 316, 355, 356, 380, 397], want_response: false }], wants: [154, 403], provide: [(405, true), (407, true), (412, true), (413, true), (415, true), (420, true), (427, true), (437, true), (439, true), (469, true), (520, true), (522, true), (530, true), (547, true), (565, true), (589, true), (594, true), (595, true), (603, true), (642, true), (673, true), (681, true), (699, true), (703, true), (744, true), (773, true), (783, true), (786, true), (810, true), (813, true), (826, true), (842, true), (863, true), (900, true), (910, true), (911, true), (962, true), (963, true), (988, true), (6, true), (17, true), (36, true), (58, true), (60, true), (88, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [140, 160, 173, 208, 243, 246, 254, 276, 279, 287, 294, 302, 303, 304, 316, 355, 356, 380, 397], provide: [(154, true), (403, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(140, true), (160, true), (173, true), (208, true), (243, true), (246, true), (254, true), (276, true), (279, true), (287, true), (294, true), (302, true), (303, true), (304, true), (316, true), (355, true), (356, true), (380, true), (397, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {136, 154, 403} + [405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988, 6, 17, 36, 58, 60, 88, 140, 160, 173, 208, 243, 246, 254, 276, 279, 287, 294, 302, 303, 304, 316, 355, 356, 380, 397]
[INFO] [stdout] b all: {6, 17, 36, 58, 60, 88, 136, 140, 160, 173, 208, 243, 246, 254, 276, 279, 287, 294, 302, 303, 304, 316, 355, 356, 380, 397, 405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988} + [154, 403]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 17, 36, 58, 60, 88, 136, 140, 154, 160, 173, 208, 243, 246, 254, 276, 279, 287, 294, 302, 303, 304, 316, 355, 356, 380, 397, 403, 405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 17, 36, 58, 60, 88, 136, 140, 154, 160, 173, 208, 243, 246, 254, 276, 279, 287, 294, 302, 303, 304, 316, 355, 356, 380, 397, 403, 405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 17, 36, 58, 60, 88, 136, 140, 154, 160, 173, 208, 243, 246, 254, 276, 279, 287, 294, 302, 303, 304, 316, 355, 356, 380, 397, 403, 405, 407, 412, 413, 415, 420, 427, 437, 439, 469, 520, 522, 530, 547, 565, 589, 594, 595, 603, 642, 673, 681, 699, 703, 744, 773, 783, 786, 810, 813, 826, 842, 863, 900, 910, 911, 962, 963, 988], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 15, 161, 288, 314, 509, 543, 546, 746, 759, 763, 796, 798, 853, 878, 995}
[INFO] [stdout] b items: {3, 17, 18, 31, 34, 61, 70, 73, 105, 110, 139, 153, 165, 174, 175, 222, 251, 252, 285, 286, 298, 307, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463, 468, 475, 484, 492, 501, 520, 530, 532, 536, 557, 558, 566, 568, 580, 583, 656, 666, 669, 687, 701, 714, 757, 766, 790, 791, 816, 834, 847, 865, 900, 917, 920, 944, 945, 961, 963, 975, 979, 980, 992, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 996), fp: EncodedCountingMonoid(16, SumMonoid(8971)) }], item_sets: [ItemSet { range: Range(996, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 468), fp: EncodedCountingMonoid(40, SumMonoid(10876)) }, Fingerprint { range: Range(468, 996), fp: EncodedCountingMonoid(40, SumMonoid(28985)) }], item_sets: [ItemSet { range: Range(996, 7), items: [996, 3], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 288), fp: EncodedCountingMonoid(3, SumMonoid(183)) }, Fingerprint { range: Range(468, 796), fp: EncodedCountingMonoid(6, SumMonoid(3866)) }, Fingerprint { range: Range(796, 996), fp: EncodedCountingMonoid(5, SumMonoid(4320)) }], item_sets: [ItemSet { range: Range(288, 468), items: [288, 314], want_response: true }], wants: [996, 3], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 153), fp: EncodedCountingMonoid(10, SumMonoid(658)) }, Fingerprint { range: Range(153, 288), fp: EncodedCountingMonoid(9, SumMonoid(1963)) }, Fingerprint { range: Range(468, 580), fp: EncodedCountingMonoid(13, SumMonoid(6787)) }, Fingerprint { range: Range(580, 796), fp: EncodedCountingMonoid(12, SumMonoid(8360)) }, Fingerprint { range: Range(796, 945), fp: EncodedCountingMonoid(8, SumMonoid(7043)) }, Fingerprint { range: Range(945, 996), fp: EncodedCountingMonoid(7, SumMonoid(6795)) }], item_sets: [ItemSet { range: Range(288, 468), items: [298, 307, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463], want_response: false }], wants: [288, 314], provide: [(996, true), (3, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 153), items: [7, 15], want_response: true }, ItemSet { range: Range(153, 288), items: [161], want_response: true }, ItemSet { range: Range(468, 546), items: [509, 543], want_response: true }, ItemSet { range: Range(546, 580), items: [546], want_response: true }, ItemSet { range: Range(580, 763), items: [746, 759], want_response: true }, ItemSet { range: Range(763, 796), items: [763], want_response: true }, ItemSet { range: Range(796, 853), items: [796, 798], want_response: true }, ItemSet { range: Range(853, 945), items: [853, 878], want_response: true }, ItemSet { range: Range(945, 996), items: [995], want_response: true }], wants: [298, 307, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463], provide: [(288, true), (314, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 153), items: [17, 18, 31, 34, 61, 70, 73, 105, 110, 139], want_response: false }, ItemSet { range: Range(153, 288), items: [153, 165, 174, 175, 222, 251, 252, 285, 286], want_response: false }, ItemSet { range: Range(468, 546), items: [468, 475, 484, 492, 501, 520, 530, 532, 536], want_response: false }, ItemSet { range: Range(546, 580), items: [557, 558, 566, 568], want_response: false }, ItemSet { range: Range(580, 763), items: [580, 583, 656, 666, 669, 687, 701, 714, 757], want_response: false }, ItemSet { range: Range(763, 796), items: [766, 790, 791], want_response: false }, ItemSet { range: Range(796, 853), items: [816, 834, 847], want_response: false }, ItemSet { range: Range(853, 945), items: [865, 900, 917, 920, 944], want_response: false }, ItemSet { range: Range(945, 996), items: [945, 961, 963, 975, 979, 980, 992], want_response: false }], wants: [7, 15, 161, 509, 543, 546, 746, 759, 763, 796, 798, 853, 878, 995], provide: [(298, true), (307, true), (337, true), (343, true), (346, true), (352, true), (355, true), (370, true), (386, true), (392, true), (400, true), (411, true), (415, true), (417, true), (418, true), (445, true), (447, true), (448, true), (449, true), (456, true), (463, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [17, 18, 31, 34, 61, 70, 73, 105, 110, 139, 153, 165, 174, 175, 222, 251, 252, 285, 286, 468, 475, 484, 492, 501, 520, 530, 532, 536, 557, 558, 566, 568, 580, 583, 656, 666, 669, 687, 701, 714, 757, 766, 790, 791, 816, 834, 847, 865, 900, 917, 920, 944, 945, 961, 963, 975, 979, 980, 992], provide: [(7, true), (15, true), (161, true), (509, true), (543, true), (546, true), (746, true), (759, true), (763, true), (796, true), (798, true), (853, true), (878, true), (995, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(17, true), (18, true), (31, true), (34, true), (61, true), (70, true), (73, true), (105, true), (110, true), (139, true), (153, true), (165, true), (174, true), (175, true), (222, true), (251, true), (252, true), (285, true), (286, true), (468, true), (475, true), (484, true), (492, true), (501, true), (520, true), (530, true), (532, true), (536, true), (557, true), (558, true), (566, true), (568, true), (580, true), (583, true), (656, true), (666, true), (669, true), (687, true), (701, true), (714, true), (757, true), (766, true), (790, true), (791, true), (816, true), (834, true), (847, true), (865, true), (900, true), (917, true), (920, true), (944, true), (945, true), (961, true), (963, true), (975, true), (979, true), (980, true), (992, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 15, 161, 288, 314, 509, 543, 546, 746, 759, 763, 796, 798, 853, 878, 995} + [996, 3, 298, 307, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463, 17, 18, 31, 34, 61, 70, 73, 105, 110, 139, 153, 165, 174, 175, 222, 251, 252, 285, 286, 468, 475, 484, 492, 501, 520, 530, 532, 536, 557, 558, 566, 568, 580, 583, 656, 666, 669, 687, 701, 714, 757, 766, 790, 791, 816, 834, 847, 865, 900, 917, 920, 944, 945, 961, 963, 975, 979, 980, 992]
[INFO] [stdout] b all: {3, 17, 18, 31, 34, 61, 70, 73, 105, 110, 139, 153, 165, 174, 175, 222, 251, 252, 285, 286, 298, 307, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463, 468, 475, 484, 492, 501, 520, 530, 532, 536, 557, 558, 566, 568, 580, 583, 656, 666, 669, 687, 701, 714, 757, 766, 790, 791, 816, 834, 847, 865, 900, 917, 920, 944, 945, 961, 963, 975, 979, 980, 992, 996} + [288, 314, 7, 15, 161, 509, 543, 546, 746, 759, 763, 796, 798, 853, 878, 995]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 7, 15, 17, 18, 31, 34, 61, 70, 73, 105, 110, 139, 153, 161, 165, 174, 175, 222, 251, 252, 285, 286, 288, 298, 307, 314, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463, 468, 475, 484, 492, 501, 509, 520, 530, 532, 536, 543, 546, 557, 558, 566, 568, 580, 583, 656, 666, 669, 687, 701, 714, 746, 757, 759, 763, 766, 790, 791, 796, 798, 816, 834, 847, 853, 865, 878, 900, 917, 920, 944, 945, 961, 963, 975, 979, 980, 992, 995, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 7, 15, 17, 18, 31, 34, 61, 70, 73, 105, 110, 139, 153, 161, 165, 174, 175, 222, 251, 252, 285, 286, 288, 298, 307, 314, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463, 468, 475, 484, 492, 501, 509, 520, 530, 532, 536, 543, 546, 557, 558, 566, 568, 580, 583, 656, 666, 669, 687, 701, 714, 746, 757, 759, 763, 766, 790, 791, 796, 798, 816, 834, 847, 853, 865, 878, 900, 917, 920, 944, 945, 961, 963, 975, 979, 980, 992, 995, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 7, 15, 17, 18, 31, 34, 61, 70, 73, 105, 110, 139, 153, 161, 165, 174, 175, 222, 251, 252, 285, 286, 288, 298, 307, 314, 337, 343, 346, 352, 355, 370, 386, 392, 400, 411, 415, 417, 418, 445, 447, 448, 449, 456, 463, 468, 475, 484, 492, 501, 509, 520, 530, 532, 536, 543, 546, 557, 558, 566, 568, 580, 583, 656, 666, 669, 687, 701, 714, 746, 757, 759, 763, 766, 790, 791, 796, 798, 816, 834, 847, 853, 865, 878, 900, 917, 920, 944, 945, 961, 963, 975, 979, 980, 992, 995, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {50, 80, 108, 127, 132, 147, 219, 238, 262, 264, 294, 313, 315, 346, 383, 424, 477, 495, 581, 663, 668, 703, 765, 791, 795, 844, 868, 890, 891}
[INFO] [stdout] b items: {37, 138, 208, 365, 414, 595, 797, 836}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(50, 892), fp: EncodedCountingMonoid(29, SumMonoid(13133)) }], item_sets: [ItemSet { range: Range(892, 50), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(50, 595), fp: EncodedCountingMonoid(4, SumMonoid(1125)) }, Fingerprint { range: Range(595, 892), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }], item_sets: [ItemSet { range: Range(892, 50), items: [37], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(50, 294), fp: EncodedCountingMonoid(10, SumMonoid(1627)) }, Fingerprint { range: Range(294, 595), fp: EncodedCountingMonoid(9, SumMonoid(3628)) }, Fingerprint { range: Range(595, 795), fp: EncodedCountingMonoid(5, SumMonoid(3590)) }, Fingerprint { range: Range(795, 892), fp: EncodedCountingMonoid(5, SumMonoid(4288)) }], item_sets: [], wants: [37], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(50, 294), items: [138, 208], want_response: true }, ItemSet { range: Range(294, 595), items: [365, 414], want_response: true }, ItemSet { range: Range(595, 795), items: [595], want_response: true }, ItemSet { range: Range(795, 892), items: [797, 836], want_response: true }], wants: [], provide: [(37, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(50, 294), items: [50, 80, 108, 127, 132, 147, 219, 238, 262, 264], want_response: false }, ItemSet { range: Range(294, 595), items: [294, 313, 315, 346, 383, 424, 477, 495, 581], want_response: false }, ItemSet { range: Range(595, 795), items: [663, 668, 703, 765, 791], want_response: false }, ItemSet { range: Range(795, 892), items: [795, 844, 868, 890, 891], want_response: false }], wants: [138, 208, 365, 414, 595, 797, 836], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [50, 80, 108, 127, 132, 147, 219, 238, 262, 264, 294, 313, 315, 346, 383, 424, 477, 495, 581, 663, 668, 703, 765, 791, 795, 844, 868, 890, 891], provide: [(138, true), (208, true), (365, true), (414, true), (595, true), (797, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(50, true), (80, true), (108, true), (127, true), (132, true), (147, true), (219, true), (238, true), (262, true), (264, true), (294, true), (313, true), (315, true), (346, true), (383, true), (424, true), (477, true), (495, true), (581, true), (663, true), (668, true), (703, true), (765, true), (791, true), (795, true), (844, true), (868, true), (890, true), (891, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {50, 80, 108, 127, 132, 147, 219, 238, 262, 264, 294, 313, 315, 346, 383, 424, 477, 495, 581, 663, 668, 703, 765, 791, 795, 844, 868, 890, 891} + [37, 138, 208, 365, 414, 595, 797, 836]
[INFO] [stdout] b all: {37, 138, 208, 365, 414, 595, 797, 836} + [50, 80, 108, 127, 132, 147, 219, 238, 262, 264, 294, 313, 315, 346, 383, 424, 477, 495, 581, 663, 668, 703, 765, 791, 795, 844, 868, 890, 891]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [37, 50, 80, 108, 127, 132, 138, 147, 208, 219, 238, 262, 264, 294, 313, 315, 346, 365, 383, 414, 424, 477, 495, 581, 595, 663, 668, 703, 765, 791, 795, 797, 836, 844, 868, 890, 891]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [37, 50, 80, 108, 127, 132, 138, 147, 208, 219, 238, 262, 264, 294, 313, 315, 346, 365, 383, 414, 424, 477, 495, 581, 595, 663, 668, 703, 765, 791, 795, 797, 836, 844, 868, 890, 891], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [37, 50, 80, 108, 127, 132, 138, 147, 208, 219, 238, 262, 264, 294, 313, 315, 346, 365, 383, 414, 424, 477, 495, 581, 595, 663, 668, 703, 765, 791, 795, 797, 836, 844, 868, 890, 891], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 79, 99, 102, 149, 158, 174, 183, 186, 187, 205, 231, 250, 271, 309, 414, 554, 564, 598, 600, 631, 656, 679, 684, 733, 754, 784, 819, 887, 888, 890, 933, 954, 956, 976, 984}
[INFO] [stdout] b items: {92, 96, 135, 157, 404, 474, 520, 677, 698, 799, 917}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 985), fp: EncodedCountingMonoid(36, SumMonoid(18522)) }], item_sets: [ItemSet { range: Range(985, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 520), fp: EncodedCountingMonoid(6, SumMonoid(1358)) }, Fingerprint { range: Range(520, 985), fp: EncodedCountingMonoid(5, SumMonoid(3611)) }], item_sets: [ItemSet { range: Range(985, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 186), fp: EncodedCountingMonoid(8, SumMonoid(945)) }, Fingerprint { range: Range(186, 520), fp: EncodedCountingMonoid(8, SumMonoid(2053)) }, Fingerprint { range: Range(520, 784), fp: EncodedCountingMonoid(10, SumMonoid(6453)) }, Fingerprint { range: Range(784, 985), fp: EncodedCountingMonoid(10, SumMonoid(9071)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 135), items: [92, 96], want_response: true }, ItemSet { range: Range(135, 186), items: [135, 157], want_response: true }, ItemSet { range: Range(186, 520), items: [404, 474], want_response: true }, ItemSet { range: Range(520, 698), items: [520, 677], want_response: true }, ItemSet { range: Range(698, 784), items: [698], want_response: true }, ItemSet { range: Range(784, 985), items: [799, 917], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 135), items: [1, 79, 99, 102], want_response: false }, ItemSet { range: Range(135, 186), items: [149, 158, 174, 183], want_response: false }, ItemSet { range: Range(186, 520), items: [186, 187, 205, 231, 250, 271, 309, 414], want_response: false }, ItemSet { range: Range(520, 698), items: [554, 564, 598, 600, 631, 656, 679, 684], want_response: false }, ItemSet { range: Range(698, 784), items: [733, 754], want_response: false }, ItemSet { range: Range(784, 985), items: [784, 819, 887, 888, 890, 933, 954, 956, 976, 984], want_response: false }], wants: [92, 96, 135, 157, 404, 474, 520, 677, 698, 799, 917], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [1, 79, 99, 102, 149, 158, 174, 183, 186, 187, 205, 231, 250, 271, 309, 414, 554, 564, 598, 600, 631, 656, 679, 684, 733, 754, 784, 819, 887, 888, 890, 933, 954, 956, 976, 984], provide: [(92, true), (96, true), (135, true), (157, true), (404, true), (474, true), (520, true), (677, true), (698, true), (799, true), (917, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(1, true), (79, true), (99, true), (102, true), (149, true), (158, true), (174, true), (183, true), (186, true), (187, true), (205, true), (231, true), (250, true), (271, true), (309, true), (414, true), (554, true), (564, true), (598, true), (600, true), (631, true), (656, true), (679, true), (684, true), (733, true), (754, true), (784, true), (819, true), (887, true), (888, true), (890, true), (933, true), (954, true), (956, true), (976, true), (984, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 79, 99, 102, 149, 158, 174, 183, 186, 187, 205, 231, 250, 271, 309, 414, 554, 564, 598, 600, 631, 656, 679, 684, 733, 754, 784, 819, 887, 888, 890, 933, 954, 956, 976, 984} + [92, 96, 135, 157, 404, 474, 520, 677, 698, 799, 917]
[INFO] [stdout] b all: {92, 96, 135, 157, 404, 474, 520, 677, 698, 799, 917} + [1, 79, 99, 102, 149, 158, 174, 183, 186, 187, 205, 231, 250, 271, 309, 414, 554, 564, 598, 600, 631, 656, 679, 684, 733, 754, 784, 819, 887, 888, 890, 933, 954, 956, 976, 984]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 79, 92, 96, 99, 102, 135, 149, 157, 158, 174, 183, 186, 187, 205, 231, 250, 271, 309, 404, 414, 474, 520, 554, 564, 598, 600, 631, 656, 677, 679, 684, 698, 733, 754, 784, 799, 819, 887, 888, 890, 917, 933, 954, 956, 976, 984]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 79, 92, 96, 99, 102, 135, 149, 157, 158, 174, 183, 186, 187, 205, 231, 250, 271, 309, 404, 414, 474, 520, 554, 564, 598, 600, 631, 656, 677, 679, 684, 698, 733, 754, 784, 799, 819, 887, 888, 890, 917, 933, 954, 956, 976, 984], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 79, 92, 96, 99, 102, 135, 149, 157, 158, 174, 183, 186, 187, 205, 231, 250, 271, 309, 404, 414, 474, 520, 554, 564, 598, 600, 631, 656, 677, 679, 684, 698, 733, 754, 784, 799, 819, 887, 888, 890, 917, 933, 954, 956, 976, 984], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {32, 66, 86, 103, 110, 125, 142, 148, 160, 211, 223, 298, 303, 392, 420, 425, 435, 441, 488, 490, 519, 537, 558, 565, 607, 616, 630, 639, 642, 675, 690, 715, 732, 737, 739, 790, 813, 819, 828, 857, 874, 904, 922, 923, 967, 984}
[INFO] [stdout] b items: {4, 8, 9, 13, 22, 26, 97, 102, 116, 144, 156, 157, 174, 179, 196, 234, 246, 321, 328, 358, 359, 388, 399, 416, 425, 439, 448, 452, 555, 573, 592, 609, 611, 612, 628, 639, 642, 651, 655, 660, 685, 703, 710, 720, 738, 746, 758, 765, 780, 786, 792, 802, 805, 818, 835, 849, 885, 900, 907, 928, 934, 944, 958, 985, 987}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(32, 985), fp: EncodedCountingMonoid(46, SumMonoid(24380)) }], item_sets: [ItemSet { range: Range(985, 32), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(32, 639), fp: EncodedCountingMonoid(29, SumMonoid(10314)) }, Fingerprint { range: Range(639, 985), fp: EncodedCountingMonoid(28, SumMonoid(21995)) }], item_sets: [ItemSet { range: Range(985, 32), items: [985, 987, 4, 8, 9, 13, 22, 26], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(32, 420), fp: EncodedCountingMonoid(14, SumMonoid(2399)) }, Fingerprint { range: Range(420, 639), fp: EncodedCountingMonoid(13, SumMonoid(6731)) }, Fingerprint { range: Range(639, 819), fp: EncodedCountingMonoid(10, SumMonoid(7172)) }, Fingerprint { range: Range(819, 985), fp: EncodedCountingMonoid(9, SumMonoid(8078)) }], item_sets: [], wants: [985, 987, 4, 8, 9, 13, 22, 26], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(32, 234), fp: EncodedCountingMonoid(9, SumMonoid(1321)) }, Fingerprint { range: Range(234, 420), fp: EncodedCountingMonoid(9, SumMonoid(3049)) }, Fingerprint { range: Range(420, 592), fp: EncodedCountingMonoid(6, SumMonoid(2892)) }, Fingerprint { range: Range(592, 639), fp: EncodedCountingMonoid(5, SumMonoid(3052)) }, Fingerprint { range: Range(639, 746), fp: EncodedCountingMonoid(10, SumMonoid(6803)) }, Fingerprint { range: Range(746, 819), fp: EncodedCountingMonoid(9, SumMonoid(7052)) }, Fingerprint { range: Range(819, 928), fp: EncodedCountingMonoid(5, SumMonoid(4376)) }, Fingerprint { range: Range(928, 985), fp: EncodedCountingMonoid(4, SumMonoid(3764)) }], item_sets: [], wants: [], provide: [(985, true), (987, true), (4, true), (8, true), (9, true), (13, true), (22, true), (26, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(32, 142), fp: EncodedCountingMonoid(6, SumMonoid(522)) }, Fingerprint { range: Range(142, 234), fp: EncodedCountingMonoid(5, SumMonoid(884)) }, Fingerprint { range: Range(420, 490), fp: EncodedCountingMonoid(5, SumMonoid(2209)) }, Fingerprint { range: Range(490, 592), fp: EncodedCountingMonoid(5, SumMonoid(2669)) }, Fingerprint { range: Range(639, 715), fp: EncodedCountingMonoid(4, SumMonoid(2646)) }, Fingerprint { range: Range(715, 746), fp: EncodedCountingMonoid(4, SumMonoid(2923)) }, Fingerprint { range: Range(819, 904), fp: EncodedCountingMonoid(4, SumMonoid(3378)) }, Fingerprint { range: Range(904, 928), fp: EncodedCountingMonoid(3, SumMonoid(2749)) }], item_sets: [ItemSet { range: Range(234, 392), items: [298, 303], want_response: true }, ItemSet { range: Range(392, 420), items: [392], want_response: true }, ItemSet { range: Range(592, 630), items: [607, 616], want_response: true }, ItemSet { range: Range(630, 639), items: [630], want_response: true }, ItemSet { range: Range(746, 819), items: [790, 813], want_response: true }, ItemSet { range: Range(928, 985), items: [967, 984], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(142, 174), fp: EncodedCountingMonoid(3, SumMonoid(457)) }, Fingerprint { range: Range(174, 234), fp: EncodedCountingMonoid(3, SumMonoid(549)) }, Fingerprint { range: Range(639, 660), fp: EncodedCountingMonoid(4, SumMonoid(2587)) }, Fingerprint { range: Range(660, 715), fp: EncodedCountingMonoid(4, SumMonoid(2758)) }], item_sets: [ItemSet { range: Range(234, 392), items: [234, 246, 321, 328, 358, 359, 388], want_response: false }, ItemSet { range: Range(392, 420), items: [399, 416], want_response: false }, ItemSet { range: Range(592, 630), items: [592, 609, 611, 612, 628], want_response: false }, ItemSet { range: Range(630, 639), items: [], want_response: false }, ItemSet { range: Range(746, 819), items: [746, 758, 765, 780, 786, 792, 802, 805, 818], want_response: false }, ItemSet { range: Range(928, 985), items: [928, 934, 944, 958], want_response: false }, ItemSet { range: Range(32, 116), items: [97, 102], want_response: true }, ItemSet { range: Range(116, 142), items: [116], want_response: true }, ItemSet { range: Range(420, 448), items: [425, 439], want_response: true }, ItemSet { range: Range(448, 490), items: [448, 452], want_response: true }, ItemSet { range: Range(490, 592), items: [555, 573], want_response: true }, ItemSet { range: Range(715, 746), items: [720, 738], want_response: true }, ItemSet { range: Range(819, 885), items: [835, 849], want_response: true }, ItemSet { range: Range(885, 904), items: [885, 900], want_response: true }, ItemSet { range: Range(904, 928), items: [907], want_response: true }], wants: [298, 303, 392, 607, 616, 630, 790, 813, 967, 984], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(32, 116), items: [32, 66, 86, 103, 110], want_response: false }, ItemSet { range: Range(116, 142), items: [125], want_response: false }, ItemSet { range: Range(420, 448), items: [420, 425, 435, 441], want_response: false }, ItemSet { range: Range(448, 490), items: [488], want_response: false }, ItemSet { range: Range(490, 592), items: [490, 519, 537, 558, 565], want_response: false }, ItemSet { range: Range(715, 746), items: [715, 732, 737, 739], want_response: false }, ItemSet { range: Range(819, 885), items: [819, 828, 857, 874], want_response: false }, ItemSet { range: Range(885, 904), items: [], want_response: false }, ItemSet { range: Range(904, 928), items: [904, 922, 923], want_response: false }, ItemSet { range: Range(142, 160), items: [142, 148], want_response: true }, ItemSet { range: Range(160, 174), items: [160], want_response: true }, ItemSet { range: Range(174, 234), items: [211, 223], want_response: true }, ItemSet { range: Range(639, 660), items: [639, 642], want_response: true }, ItemSet { range: Range(660, 715), items: [675, 690], want_response: true }], wants: [234, 246, 321, 328, 358, 359, 388, 399, 416, 592, 609, 611, 612, 628, 746, 758, 765, 780, 786, 792, 802, 805, 818, 928, 934, 944, 958, 97, 102, 116, 439, 448, 452, 555, 573, 720, 738, 835, 849, 885, 900, 907], provide: [(298, true), (303, true), (392, true), (607, true), (616, true), (630, true), (790, true), (813, true), (967, true), (984, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(142, 160), items: [144, 156, 157], want_response: false }, ItemSet { range: Range(160, 174), items: [], want_response: false }, ItemSet { range: Range(174, 234), items: [174, 179, 196], want_response: false }, ItemSet { range: Range(639, 660), items: [639, 642, 651, 655], want_response: false }, ItemSet { range: Range(660, 715), items: [660, 685, 703, 710], want_response: false }], wants: [32, 66, 86, 103, 110, 125, 420, 435, 441, 488, 490, 519, 537, 558, 565, 715, 732, 737, 739, 819, 828, 857, 874, 904, 922, 923, 142, 148, 160, 211, 223, 675, 690], provide: [(234, true), (246, true), (321, true), (328, true), (358, true), (359, true), (388, true), (399, true), (416, true), (592, true), (609, true), (611, true), (612, true), (628, true), (746, true), (758, true), (765, true), (780, true), (786, true), (792, true), (802, true), (805, true), (818, true), (928, true), (934, true), (944, true), (958, true), (97, true), (102, true), (116, true), (439, true), (448, true), (452, true), (555, true), (573, true), (720, true), (738, true), (835, true), (849, true), (885, true), (900, true), (907, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [144, 156, 157, 174, 179, 196, 651, 655, 660, 685, 703, 710], provide: [(32, true), (66, true), (86, true), (103, true), (110, true), (125, true), (420, true), (435, true), (441, true), (488, true), (490, true), (519, true), (537, true), (558, true), (565, true), (715, true), (732, true), (737, true), (739, true), (819, true), (828, true), (857, true), (874, true), (904, true), (922, true), (923, true), (142, true), (148, true), (160, true), (211, true), (223, true), (675, true), (690, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(144, true), (156, true), (157, true), (174, true), (179, true), (196, true), (651, true), (655, true), (660, true), (685, true), (703, true), (710, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {32, 66, 86, 103, 110, 125, 142, 148, 160, 211, 223, 298, 303, 392, 420, 425, 435, 441, 488, 490, 519, 537, 558, 565, 607, 616, 630, 639, 642, 675, 690, 715, 732, 737, 739, 790, 813, 819, 828, 857, 874, 904, 922, 923, 967, 984} + [985, 987, 4, 8, 9, 13, 22, 26, 234, 246, 321, 328, 358, 359, 388, 399, 416, 592, 609, 611, 612, 628, 746, 758, 765, 780, 786, 792, 802, 805, 818, 928, 934, 944, 958, 97, 102, 116, 439, 448, 452, 555, 573, 720, 738, 835, 849, 885, 900, 907, 144, 156, 157, 174, 179, 196, 651, 655, 660, 685, 703, 710]
[INFO] [stdout] b all: {4, 8, 9, 13, 22, 26, 97, 102, 116, 144, 156, 157, 174, 179, 196, 234, 246, 321, 328, 358, 359, 388, 399, 416, 425, 439, 448, 452, 555, 573, 592, 609, 611, 612, 628, 639, 642, 651, 655, 660, 685, 703, 710, 720, 738, 746, 758, 765, 780, 786, 792, 802, 805, 818, 835, 849, 885, 900, 907, 928, 934, 944, 958, 985, 987} + [298, 303, 392, 607, 616, 630, 790, 813, 967, 984, 32, 66, 86, 103, 110, 125, 420, 435, 441, 488, 490, 519, 537, 558, 565, 715, 732, 737, 739, 819, 828, 857, 874, 904, 922, 923, 142, 148, 160, 211, 223, 675, 690]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 8, 9, 13, 22, 26, 32, 66, 86, 97, 102, 103, 110, 116, 125, 142, 144, 148, 156, 157, 160, 174, 179, 196, 211, 223, 234, 246, 298, 303, 321, 328, 358, 359, 388, 392, 399, 416, 420, 425, 435, 439, 441, 448, 452, 488, 490, 519, 537, 555, 558, 565, 573, 592, 607, 609, 611, 612, 616, 628, 630, 639, 642, 651, 655, 660, 675, 685, 690, 703, 710, 715, 720, 732, 737, 738, 739, 746, 758, 765, 780, 786, 790, 792, 802, 805, 813, 818, 819, 828, 835, 849, 857, 874, 885, 900, 904, 907, 922, 923, 928, 934, 944, 958, 967, 984, 985, 987]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 8, 9, 13, 22, 26, 32, 66, 86, 97, 102, 103, 110, 116, 125, 142, 144, 148, 156, 157, 160, 174, 179, 196, 211, 223, 234, 246, 298, 303, 321, 328, 358, 359, 388, 392, 399, 416, 420, 425, 435, 439, 441, 448, 452, 488, 490, 519, 537, 555, 558, 565, 573, 592, 607, 609, 611, 612, 616, 628, 630, 639, 642, 651, 655, 660, 675, 685, 690, 703, 710, 715, 720, 732, 737, 738, 739, 746, 758, 765, 780, 786, 790, 792, 802, 805, 813, 818, 819, 828, 835, 849, 857, 874, 885, 900, 904, 907, 922, 923, 928, 934, 944, 958, 967, 984, 985, 987], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 8, 9, 13, 22, 26, 32, 66, 86, 97, 102, 103, 110, 116, 125, 142, 144, 148, 156, 157, 160, 174, 179, 196, 211, 223, 234, 246, 298, 303, 321, 328, 358, 359, 388, 392, 399, 416, 420, 425, 435, 439, 441, 448, 452, 488, 490, 519, 537, 555, 558, 565, 573, 592, 607, 609, 611, 612, 616, 628, 630, 639, 642, 651, 655, 660, 675, 685, 690, 703, 710, 715, 720, 732, 737, 738, 739, 746, 758, 765, 780, 786, 790, 792, 802, 805, 813, 818, 819, 828, 835, 849, 857, 874, 885, 900, 904, 907, 922, 923, 928, 934, 944, 958, 967, 984, 985, 987], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 14, 21, 23, 34, 42, 75, 77, 83, 99, 102, 107, 131, 150, 162, 164, 172, 177, 221, 231, 249, 250, 254, 259, 265, 271, 276, 279, 308, 314, 315, 329, 348, 380, 392, 404, 408, 419, 435, 456, 467, 468, 492, 495, 521, 531, 532, 535, 545, 552, 575, 583, 588, 610, 613, 615, 637, 653, 662, 684, 697, 701, 702, 706, 709, 716, 724, 735, 737, 750, 769, 771, 787, 792, 796, 800, 807, 814, 826, 842, 866, 871, 874, 895, 904, 915, 955, 970, 979}
[INFO] [stdout] b items: {50, 54, 92, 113, 146, 149, 169, 187, 191, 196, 206, 215, 221, 234, 250, 267, 304, 337, 395, 399, 436, 487, 489, 515, 537, 548, 571, 580, 605, 610, 623, 642, 705, 733, 737, 756, 779, 832, 838, 842, 862, 877, 897, 913, 919, 946, 947, 949, 950, 953, 957, 962, 973, 989}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 980), fp: EncodedCountingMonoid(89, SumMonoid(43476)) }], item_sets: [ItemSet { range: Range(980, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 580), fp: EncodedCountingMonoid(27, SumMonoid(7758)) }, Fingerprint { range: Range(580, 980), fp: EncodedCountingMonoid(26, SumMonoid(21387)) }], item_sets: [ItemSet { range: Range(980, 12), items: [989], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 276), fp: EncodedCountingMonoid(26, SumMonoid(3645)) }, Fingerprint { range: Range(276, 580), fp: EncodedCountingMonoid(25, SumMonoid(10776)) }, Fingerprint { range: Range(580, 769), fp: EncodedCountingMonoid(19, SumMonoid(12822)) }, Fingerprint { range: Range(769, 980), fp: EncodedCountingMonoid(19, SumMonoid(16233)) }], item_sets: [], wants: [989], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 191), fp: EncodedCountingMonoid(8, SumMonoid(960)) }, Fingerprint { range: Range(191, 276), fp: EncodedCountingMonoid(8, SumMonoid(1780)) }, Fingerprint { range: Range(276, 489), fp: EncodedCountingMonoid(6, SumMonoid(2358)) }, Fingerprint { range: Range(489, 580), fp: EncodedCountingMonoid(5, SumMonoid(2660)) }, Fingerprint { range: Range(580, 705), fp: EncodedCountingMonoid(5, SumMonoid(3060)) }, Fingerprint { range: Range(705, 769), fp: EncodedCountingMonoid(4, SumMonoid(2931)) }, Fingerprint { range: Range(769, 946), fp: EncodedCountingMonoid(9, SumMonoid(7759)) }, Fingerprint { range: Range(946, 980), fp: EncodedCountingMonoid(8, SumMonoid(7637)) }], item_sets: [], wants: [], provide: [(989, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 99), fp: EncodedCountingMonoid(9, SumMonoid(381)) }, Fingerprint { range: Range(99, 191), fp: EncodedCountingMonoid(9, SumMonoid(1264)) }, Fingerprint { range: Range(191, 254), fp: EncodedCountingMonoid(4, SumMonoid(951)) }, Fingerprint { range: Range(254, 276), fp: EncodedCountingMonoid(4, SumMonoid(1049)) }, Fingerprint { range: Range(276, 392), fp: EncodedCountingMonoid(8, SumMonoid(2549)) }, Fingerprint { range: Range(392, 489), fp: EncodedCountingMonoid(8, SumMonoid(3449)) }, Fingerprint { range: Range(489, 535), fp: EncodedCountingMonoid(5, SumMonoid(2571)) }, Fingerprint { range: Range(535, 580), fp: EncodedCountingMonoid(4, SumMonoid(2207)) }, Fingerprint { range: Range(580, 653), fp: EncodedCountingMonoid(6, SumMonoid(3646)) }, Fingerprint { range: Range(653, 705), fp: EncodedCountingMonoid(6, SumMonoid(4099)) }, Fingerprint { range: Range(705, 735), fp: EncodedCountingMonoid(4, SumMonoid(2855)) }, Fingerprint { range: Range(735, 769), fp: EncodedCountingMonoid(3, SumMonoid(2222)) }, Fingerprint { range: Range(769, 826), fp: EncodedCountingMonoid(8, SumMonoid(6336)) }, Fingerprint { range: Range(826, 946), fp: EncodedCountingMonoid(8, SumMonoid(6993)) }], item_sets: [ItemSet { range: Range(946, 979), items: [955, 970], want_response: true }, ItemSet { range: Range(979, 980), items: [979], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(99, 169), fp: EncodedCountingMonoid(3, SumMonoid(408)) }, Fingerprint { range: Range(191, 221), fp: EncodedCountingMonoid(4, SumMonoid(808)) }, Fingerprint { range: Range(221, 254), fp: EncodedCountingMonoid(3, SumMonoid(705)) }, Fingerprint { range: Range(580, 623), fp: EncodedCountingMonoid(3, SumMonoid(1795)) }, Fingerprint { range: Range(826, 877), fp: EncodedCountingMonoid(4, SumMonoid(3374)) }, Fingerprint { range: Range(877, 946), fp: EncodedCountingMonoid(4, SumMonoid(3606)) }], item_sets: [ItemSet { range: Range(946, 979), items: [946, 947, 949, 950, 953, 957, 962, 973], want_response: false }, ItemSet { range: Range(979, 980), items: [], want_response: false }, ItemSet { range: Range(12, 92), items: [50, 54], want_response: true }, ItemSet { range: Range(92, 99), items: [92], want_response: true }, ItemSet { range: Range(169, 191), items: [169, 187], want_response: true }, ItemSet { range: Range(254, 276), items: [267], want_response: true }, ItemSet { range: Range(276, 392), items: [304, 337], want_response: true }, ItemSet { range: Range(392, 436), items: [395, 399], want_response: true }, ItemSet { range: Range(436, 489), items: [436, 487], want_response: true }, ItemSet { range: Range(489, 535), items: [489, 515], want_response: true }, ItemSet { range: Range(535, 571), items: [537, 548], want_response: true }, ItemSet { range: Range(571, 580), items: [571], want_response: true }, ItemSet { range: Range(623, 653), items: [623, 642], want_response: true }, ItemSet { range: Range(653, 705), items: [], want_response: true }, ItemSet { range: Range(705, 735), items: [705, 733], want_response: true }, ItemSet { range: Range(735, 769), items: [737, 756], want_response: true }, ItemSet { range: Range(769, 826), items: [779], want_response: true }], wants: [955, 970, 979], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(99, 150), fp: EncodedCountingMonoid(4, SumMonoid(439)) }, Fingerprint { range: Range(150, 169), fp: EncodedCountingMonoid(3, SumMonoid(476)) }, Fingerprint { range: Range(580, 613), fp: EncodedCountingMonoid(3, SumMonoid(1781)) }, Fingerprint { range: Range(826, 871), fp: EncodedCountingMonoid(3, SumMonoid(2534)) }], item_sets: [ItemSet { range: Range(12, 92), items: [12, 14, 21, 23, 34, 42, 75, 77, 83], want_response: false }, ItemSet { range: Range(92, 99), items: [], want_response: false }, ItemSet { range: Range(169, 191), items: [172, 177], want_response: false }, ItemSet { range: Range(254, 276), items: [254, 259, 265, 271], want_response: false }, ItemSet { range: Range(276, 392), items: [276, 279, 308, 314, 315, 329, 348, 380], want_response: false }, ItemSet { range: Range(392, 436), items: [392, 404, 408, 419, 435], want_response: false }, ItemSet { range: Range(436, 489), items: [456, 467, 468], want_response: false }, ItemSet { range: Range(489, 535), items: [492, 495, 521, 531, 532], want_response: false }, ItemSet { range: Range(535, 571), items: [535, 545, 552], want_response: false }, ItemSet { range: Range(571, 580), items: [575], want_response: false }, ItemSet { range: Range(623, 653), items: [637], want_response: false }, ItemSet { range: Range(653, 705), items: [653, 662, 684, 697, 701, 702], want_response: false }, ItemSet { range: Range(705, 735), items: [706, 709, 716, 724], want_response: false }, ItemSet { range: Range(735, 769), items: [735, 737, 750], want_response: false }, ItemSet { range: Range(769, 826), items: [769, 771, 787, 792, 796, 800, 807, 814], want_response: false }, ItemSet { range: Range(191, 221), items: [], want_response: true }, ItemSet { range: Range(221, 249), items: [221, 231], want_response: true }, ItemSet { range: Range(249, 254), items: [249, 250], want_response: true }, ItemSet { range: Range(613, 623), items: [613, 615], want_response: true }, ItemSet { range: Range(871, 877), items: [871, 874], want_response: true }, ItemSet { range: Range(877, 915), items: [895, 904], want_response: true }, ItemSet { range: Range(915, 946), items: [915], want_response: true }], wants: [946, 947, 949, 950, 953, 957, 962, 973, 50, 54, 92, 169, 187, 267, 304, 337, 395, 399, 436, 487, 489, 515, 537, 548, 571, 623, 642, 705, 733, 756, 779], provide: [(955, true), (970, true), (979, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(191, 221), items: [191, 196, 206, 215], want_response: false }, ItemSet { range: Range(221, 249), items: [221, 234], want_response: false }, ItemSet { range: Range(249, 254), items: [250], want_response: false }, ItemSet { range: Range(613, 623), items: [], want_response: false }, ItemSet { range: Range(871, 877), items: [], want_response: false }, ItemSet { range: Range(877, 915), items: [877, 897, 913], want_response: false }, ItemSet { range: Range(915, 946), items: [919], want_response: false }, ItemSet { range: Range(99, 149), items: [113, 146], want_response: true }, ItemSet { range: Range(149, 150), items: [149], want_response: true }, ItemSet { range: Range(150, 169), items: [], want_response: true }, ItemSet { range: Range(580, 610), items: [580, 605], want_response: true }, ItemSet { range: Range(610, 613), items: [610], want_response: true }, ItemSet { range: Range(826, 842), items: [832, 838], want_response: true }, ItemSet { range: Range(842, 871), items: [842, 862], want_response: true }], wants: [12, 14, 21, 23, 34, 42, 75, 77, 83, 172, 177, 254, 259, 265, 271, 276, 279, 308, 314, 315, 329, 348, 380, 392, 404, 408, 419, 435, 456, 467, 468, 492, 495, 521, 531, 532, 535, 545, 552, 575, 637, 653, 662, 684, 697, 701, 702, 706, 709, 716, 724, 735, 750, 769, 771, 787, 792, 796, 800, 807, 814, 231, 249, 613, 615, 871, 874, 895, 904, 915], provide: [(946, true), (947, true), (949, true), (950, true), (953, true), (957, true), (962, true), (973, true), (50, true), (54, true), (92, true), (169, true), (187, true), (267, true), (304, true), (337, true), (395, true), (399, true), (436, true), (487, true), (489, true), (515, true), (537, true), (548, true), (571, true), (623, true), (642, true), (705, true), (733, true), (756, true), (779, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(99, 149), items: [99, 102, 107, 131], want_response: false }, ItemSet { range: Range(149, 150), items: [], want_response: false }, ItemSet { range: Range(150, 169), items: [150, 162, 164], want_response: false }, ItemSet { range: Range(580, 610), items: [583, 588], want_response: false }, ItemSet { range: Range(610, 613), items: [610], want_response: false }, ItemSet { range: Range(826, 842), items: [826], want_response: false }, ItemSet { range: Range(842, 871), items: [842, 866], want_response: false }], wants: [191, 196, 206, 215, 234, 877, 897, 913, 919, 113, 146, 149, 580, 605, 832, 838, 862], provide: [(12, true), (14, true), (21, true), (23, true), (34, true), (42, true), (75, true), (77, true), (83, true), (172, true), (177, true), (254, true), (259, true), (265, true), (271, true), (276, true), (279, true), (308, true), (314, true), (315, true), (329, true), (348, true), (380, true), (392, true), (404, true), (408, true), (419, true), (435, true), (456, true), (467, true), (468, true), (492, true), (495, true), (521, true), (531, true), (532, true), (535, true), (545, true), (552, true), (575, true), (637, true), (653, true), (662, true), (684, true), (697, true), (701, true), (702, true), (706, true), (709, true), (716, true), (724, true), (735, true), (750, true), (769, true), (771, true), (787, true), (792, true), (796, true), (800, true), (807, true), (814, true), (231, true), (249, true), (613, true), (615, true), (871, true), (874, true), (895, true), (904, true), (915, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [99, 102, 107, 131, 150, 162, 164, 583, 588, 826, 866], provide: [(191, true), (196, true), (206, true), (215, true), (234, true), (877, true), (897, true), (913, true), (919, true), (113, true), (146, true), (149, true), (580, true), (605, true), (832, true), (838, true), (862, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(99, true), (102, true), (107, true), (131, true), (150, true), (162, true), (164, true), (583, true), (588, true), (826, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 14, 21, 23, 34, 42, 75, 77, 83, 99, 102, 107, 131, 150, 162, 164, 172, 177, 221, 231, 249, 250, 254, 259, 265, 271, 276, 279, 308, 314, 315, 329, 348, 380, 392, 404, 408, 419, 435, 456, 467, 468, 492, 495, 521, 531, 532, 535, 545, 552, 575, 583, 588, 610, 613, 615, 637, 653, 662, 684, 697, 701, 702, 706, 709, 716, 724, 735, 737, 750, 769, 771, 787, 792, 796, 800, 807, 814, 826, 842, 866, 871, 874, 895, 904, 915, 955, 970, 979} + [989, 946, 947, 949, 950, 953, 957, 962, 973, 50, 54, 92, 169, 187, 267, 304, 337, 395, 399, 436, 487, 489, 515, 537, 548, 571, 623, 642, 705, 733, 756, 779, 191, 196, 206, 215, 234, 877, 897, 913, 919, 113, 146, 149, 580, 605, 832, 838, 862]
[INFO] [stdout] b all: {50, 54, 92, 113, 146, 149, 169, 187, 191, 196, 206, 215, 221, 234, 250, 267, 304, 337, 395, 399, 436, 487, 489, 515, 537, 548, 571, 580, 605, 610, 623, 642, 705, 733, 737, 756, 779, 832, 838, 842, 862, 877, 897, 913, 919, 946, 947, 949, 950, 953, 957, 962, 973, 989} + [955, 970, 979, 12, 14, 21, 23, 34, 42, 75, 77, 83, 172, 177, 254, 259, 265, 271, 276, 279, 308, 314, 315, 329, 348, 380, 392, 404, 408, 419, 435, 456, 467, 468, 492, 495, 521, 531, 532, 535, 545, 552, 575, 637, 653, 662, 684, 697, 701, 702, 706, 709, 716, 724, 735, 750, 769, 771, 787, 792, 796, 800, 807, 814, 231, 249, 613, 615, 871, 874, 895, 904, 915, 99, 102, 107, 131, 150, 162, 164, 583, 588, 826, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [12, 14, 21, 23, 34, 42, 50, 54, 75, 77, 83, 92, 99, 102, 107, 113, 131, 146, 149, 150, 162, 164, 169, 172, 177, 187, 191, 196, 206, 215, 221, 231, 234, 249, 250, 254, 259, 265, 267, 271, 276, 279, 304, 308, 314, 315, 329, 337, 348, 380, 392, 395, 399, 404, 408, 419, 435, 436, 456, 467, 468, 487, 489, 492, 495, 515, 521, 531, 532, 535, 537, 545, 548, 552, 571, 575, 580, 583, 588, 605, 610, 613, 615, 623, 637, 642, 653, 662, 684, 697, 701, 702, 705, 706, 709, 716, 724, 733, 735, 737, 750, 756, 769, 771, 779, 787, 792, 796, 800, 807, 814, 826, 832, 838, 842, 862, 866, 871, 874, 877, 895, 897, 904, 913, 915, 919, 946, 947, 949, 950, 953, 955, 957, 962, 970, 973, 979, 989]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [12, 14, 21, 23, 34, 42, 50, 54, 75, 77, 83, 92, 99, 102, 107, 113, 131, 146, 149, 150, 162, 164, 169, 172, 177, 187, 191, 196, 206, 215, 221, 231, 234, 249, 250, 254, 259, 265, 267, 271, 276, 279, 304, 308, 314, 315, 329, 337, 348, 380, 392, 395, 399, 404, 408, 419, 435, 436, 456, 467, 468, 487, 489, 492, 495, 515, 521, 531, 532, 535, 537, 545, 548, 552, 571, 575, 580, 583, 588, 605, 610, 613, 615, 623, 637, 642, 653, 662, 684, 697, 701, 702, 705, 706, 709, 716, 724, 733, 735, 737, 750, 756, 769, 771, 779, 787, 792, 796, 800, 807, 814, 826, 832, 838, 842, 862, 866, 871, 874, 877, 895, 897, 904, 913, 915, 919, 946, 947, 949, 950, 953, 955, 957, 962, 970, 973, 979, 989], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [12, 14, 21, 23, 34, 42, 50, 54, 75, 77, 83, 92, 99, 102, 107, 113, 131, 146, 149, 150, 162, 164, 169, 172, 177, 187, 191, 196, 206, 215, 221, 231, 234, 249, 250, 254, 259, 265, 267, 271, 276, 279, 304, 308, 314, 315, 329, 337, 348, 380, 392, 395, 399, 404, 408, 419, 435, 436, 456, 467, 468, 487, 489, 492, 495, 515, 521, 531, 532, 535, 537, 545, 548, 552, 571, 575, 580, 583, 588, 605, 610, 613, 615, 623, 637, 642, 653, 662, 684, 697, 701, 702, 705, 706, 709, 716, 724, 733, 735, 737, 750, 756, 769, 771, 779, 787, 792, 796, 800, 807, 814, 826, 832, 838, 842, 862, 866, 871, 874, 877, 895, 897, 904, 913, 915, 919, 946, 947, 949, 950, 953, 955, 957, 962, 970, 973, 979, 989], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {8, 72, 87, 143, 186, 203, 216, 219, 232, 268, 279, 285, 302, 320, 322, 342, 380, 442, 456, 543, 554, 680, 769, 822, 839, 959, 982}
[INFO] [stdout] b items: {3, 14, 25, 65, 75, 81, 110, 117, 120, 132, 153, 233, 239, 265, 277, 287, 289, 297, 309, 320, 321, 325, 332, 347, 393, 425, 435, 436, 462, 469, 473, 478, 488, 513, 514, 516, 544, 553, 569, 585, 613, 621, 625, 649, 689, 693, 696, 705, 711, 729, 733, 741, 745, 758, 760, 781, 784, 787, 800, 835, 884, 909, 923, 927, 957, 978, 983, 984, 991, 994}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 983), fp: EncodedCountingMonoid(27, SumMonoid(10910)) }], item_sets: [ItemSet { range: Range(983, 8), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 514), fp: EncodedCountingMonoid(33, SumMonoid(9305)) }, Fingerprint { range: Range(514, 983), fp: EncodedCountingMonoid(32, SumMonoid(23314)) }], item_sets: [ItemSet { range: Range(983, 8), items: [983, 984, 991, 994, 3], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 279), fp: EncodedCountingMonoid(10, SumMonoid(1634)) }, Fingerprint { range: Range(279, 514), fp: EncodedCountingMonoid(9, SumMonoid(3128)) }, Fingerprint { range: Range(514, 822), fp: EncodedCountingMonoid(4, SumMonoid(2546)) }, Fingerprint { range: Range(822, 983), fp: EncodedCountingMonoid(4, SumMonoid(3602)) }], item_sets: [], wants: [983, 984, 991, 994, 3], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 120), fp: EncodedCountingMonoid(7, SumMonoid(487)) }, Fingerprint { range: Range(120, 279), fp: EncodedCountingMonoid(7, SumMonoid(1419)) }, Fingerprint { range: Range(279, 425), fp: EncodedCountingMonoid(10, SumMonoid(3220)) }, Fingerprint { range: Range(425, 514), fp: EncodedCountingMonoid(9, SumMonoid(4179)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7867)) }, Fingerprint { range: Range(705, 822), fp: EncodedCountingMonoid(12, SumMonoid(9034)) }, Fingerprint { range: Range(822, 927), fp: EncodedCountingMonoid(4, SumMonoid(3551)) }, Fingerprint { range: Range(927, 983), fp: EncodedCountingMonoid(3, SumMonoid(2862)) }], item_sets: [], wants: [], provide: [(983, true), (984, true), (991, true), (994, true), (3, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(120, 219), fp: EncodedCountingMonoid(4, SumMonoid(748)) }, Fingerprint { range: Range(219, 279), fp: EncodedCountingMonoid(3, SumMonoid(719)) }, Fingerprint { range: Range(279, 322), fp: EncodedCountingMonoid(4, SumMonoid(1186)) }, Fingerprint { range: Range(322, 425), fp: EncodedCountingMonoid(3, SumMonoid(1044)) }], item_sets: [ItemSet { range: Range(8, 87), items: [8, 72], want_response: true }, ItemSet { range: Range(87, 120), items: [87], want_response: true }, ItemSet { range: Range(425, 514), items: [442, 456], want_response: true }, ItemSet { range: Range(514, 680), items: [543, 554], want_response: true }, ItemSet { range: Range(680, 705), items: [680], want_response: true }, ItemSet { range: Range(705, 822), items: [769], want_response: true }, ItemSet { range: Range(822, 927), items: [822, 839], want_response: true }, ItemSet { range: Range(927, 983), items: [959, 982], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(279, 309), fp: EncodedCountingMonoid(3, SumMonoid(873)) }, Fingerprint { range: Range(309, 322), fp: EncodedCountingMonoid(3, SumMonoid(950)) }], item_sets: [ItemSet { range: Range(8, 87), items: [14, 25, 65, 75, 81], want_response: false }, ItemSet { range: Range(87, 120), items: [110, 117], want_response: false }, ItemSet { range: Range(425, 514), items: [425, 435, 436, 462, 469, 473, 478, 488, 513], want_response: false }, ItemSet { range: Range(514, 680), items: [514, 516, 544, 553, 569, 585, 613, 621, 625, 649], want_response: false }, ItemSet { range: Range(680, 705), items: [689, 693, 696], want_response: false }, ItemSet { range: Range(705, 822), items: [705, 711, 729, 733, 741, 745, 758, 760, 781, 784, 787, 800], want_response: false }, ItemSet { range: Range(822, 927), items: [835, 884, 909, 923], want_response: false }, ItemSet { range: Range(927, 983), items: [927, 957, 978], want_response: false }, ItemSet { range: Range(120, 153), items: [120, 132], want_response: true }, ItemSet { range: Range(153, 219), items: [153], want_response: true }, ItemSet { range: Range(219, 265), items: [233, 239], want_response: true }, ItemSet { range: Range(265, 279), items: [265, 277], want_response: true }, ItemSet { range: Range(322, 347), items: [325, 332], want_response: true }, ItemSet { range: Range(347, 425), items: [347, 393], want_response: true }], wants: [8, 72, 87, 442, 456, 543, 554, 680, 769, 822, 839, 959, 982], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 153), items: [143], want_response: false }, ItemSet { range: Range(153, 219), items: [186, 203, 216], want_response: false }, ItemSet { range: Range(219, 265), items: [219, 232], want_response: false }, ItemSet { range: Range(265, 279), items: [268], want_response: false }, ItemSet { range: Range(322, 347), items: [322, 342], want_response: false }, ItemSet { range: Range(347, 425), items: [380], want_response: false }, ItemSet { range: Range(279, 302), items: [279, 285], want_response: true }, ItemSet { range: Range(302, 309), items: [302], want_response: true }, ItemSet { range: Range(309, 322), items: [320], want_response: true }], wants: [14, 25, 65, 75, 81, 110, 117, 425, 435, 436, 462, 469, 473, 478, 488, 513, 514, 516, 544, 553, 569, 585, 613, 621, 625, 649, 689, 693, 696, 705, 711, 729, 733, 741, 745, 758, 760, 781, 784, 787, 800, 835, 884, 909, 923, 927, 957, 978, 120, 132, 153, 233, 239, 265, 277, 325, 332, 347, 393], provide: [(8, true), (72, true), (87, true), (442, true), (456, true), (543, true), (554, true), (680, true), (769, true), (822, true), (839, true), (959, true), (982, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(279, 302), items: [287, 289, 297], want_response: false }, ItemSet { range: Range(302, 309), items: [], want_response: false }, ItemSet { range: Range(309, 322), items: [309, 320, 321], want_response: false }], wants: [143, 186, 203, 216, 219, 232, 268, 322, 342, 380, 279, 285, 302], provide: [(14, true), (25, true), (65, true), (75, true), (81, true), (110, true), (117, true), (425, true), (435, true), (436, true), (462, true), (469, true), (473, true), (478, true), (488, true), (513, true), (514, true), (516, true), (544, true), (553, true), (569, true), (585, true), (613, true), (621, true), (625, true), (649, true), (689, true), (693, true), (696, true), (705, true), (711, true), (729, true), (733, true), (741, true), (745, true), (758, true), (760, true), (781, true), (784, true), (787, true), (800, true), (835, true), (884, true), (909, true), (923, true), (927, true), (957, true), (978, true), (120, true), (132, true), (153, true), (233, true), (239, true), (265, true), (277, true), (325, true), (332, true), (347, true), (393, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [287, 289, 297, 309, 321], provide: [(143, true), (186, true), (203, true), (216, true), (219, true), (232, true), (268, true), (322, true), (342, true), (380, true), (279, true), (285, true), (302, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(287, true), (289, true), (297, true), (309, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {8, 72, 87, 143, 186, 203, 216, 219, 232, 268, 279, 285, 302, 320, 322, 342, 380, 442, 456, 543, 554, 680, 769, 822, 839, 959, 982} + [983, 984, 991, 994, 3, 14, 25, 65, 75, 81, 110, 117, 425, 435, 436, 462, 469, 473, 478, 488, 513, 514, 516, 544, 553, 569, 585, 613, 621, 625, 649, 689, 693, 696, 705, 711, 729, 733, 741, 745, 758, 760, 781, 784, 787, 800, 835, 884, 909, 923, 927, 957, 978, 120, 132, 153, 233, 239, 265, 277, 325, 332, 347, 393, 287, 289, 297, 309, 321]
[INFO] [stdout] b all: {3, 14, 25, 65, 75, 81, 110, 117, 120, 132, 153, 233, 239, 265, 277, 287, 289, 297, 309, 320, 321, 325, 332, 347, 393, 425, 435, 436, 462, 469, 473, 478, 488, 513, 514, 516, 544, 553, 569, 585, 613, 621, 625, 649, 689, 693, 696, 705, 711, 729, 733, 741, 745, 758, 760, 781, 784, 787, 800, 835, 884, 909, 923, 927, 957, 978, 983, 984, 991, 994} + [8, 72, 87, 442, 456, 543, 554, 680, 769, 822, 839, 959, 982, 143, 186, 203, 216, 219, 232, 268, 322, 342, 380, 279, 285, 302]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 8, 14, 25, 65, 72, 75, 81, 87, 110, 117, 120, 132, 143, 153, 186, 203, 216, 219, 232, 233, 239, 265, 268, 277, 279, 285, 287, 289, 297, 302, 309, 320, 321, 322, 325, 332, 342, 347, 380, 393, 425, 435, 436, 442, 456, 462, 469, 473, 478, 488, 513, 514, 516, 543, 544, 553, 554, 569, 585, 613, 621, 625, 649, 680, 689, 693, 696, 705, 711, 729, 733, 741, 745, 758, 760, 769, 781, 784, 787, 800, 822, 835, 839, 884, 909, 923, 927, 957, 959, 978, 982, 983, 984, 991, 994]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 8, 14, 25, 65, 72, 75, 81, 87, 110, 117, 120, 132, 143, 153, 186, 203, 216, 219, 232, 233, 239, 265, 268, 277, 279, 285, 287, 289, 297, 302, 309, 320, 321, 322, 325, 332, 342, 347, 380, 393, 425, 435, 436, 442, 456, 462, 469, 473, 478, 488, 513, 514, 516, 543, 544, 553, 554, 569, 585, 613, 621, 625, 649, 680, 689, 693, 696, 705, 711, 729, 733, 741, 745, 758, 760, 769, 781, 784, 787, 800, 822, 835, 839, 884, 909, 923, 927, 957, 959, 978, 982, 983, 984, 991, 994], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 8, 14, 25, 65, 72, 75, 81, 87, 110, 117, 120, 132, 143, 153, 186, 203, 216, 219, 232, 233, 239, 265, 268, 277, 279, 285, 287, 289, 297, 302, 309, 320, 321, 322, 325, 332, 342, 347, 380, 393, 425, 435, 436, 442, 456, 462, 469, 473, 478, 488, 513, 514, 516, 543, 544, 553, 554, 569, 585, 613, 621, 625, 649, 680, 689, 693, 696, 705, 711, 729, 733, 741, 745, 758, 760, 769, 781, 784, 787, 800, 822, 835, 839, 884, 909, 923, 927, 957, 959, 978, 982, 983, 984, 991, 994], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {24, 32, 35, 81, 104, 134, 137, 156, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998}
[INFO] [stdout] b items: {160}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(24, 999), fp: EncodedCountingMonoid(55, SumMonoid(29881)) }], item_sets: [ItemSet { range: Range(999, 24), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(999, 24), items: [], want_response: false }, ItemSet { range: Range(24, 999), items: [160], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(24, 999), items: [24, 32, 35, 81, 104, 134, 137, 156, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998], want_response: false }], wants: [160], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [24, 32, 35, 81, 104, 134, 137, 156, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998], provide: [(160, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(24, true), (32, true), (35, true), (81, true), (104, true), (134, true), (137, true), (156, true), (162, true), (171, true), (186, true), (194, true), (246, true), (247, true), (255, true), (294, true), (307, true), (321, true), (420, true), (433, true), (444, true), (458, true), (484, true), (493, true), (508, true), (512, true), (513, true), (521, true), (603, true), (626, true), (639, true), (642, true), (656, true), (668, true), (670, true), (719, true), (730, true), (760, true), (807, true), (820, true), (824, true), (830, true), (843, true), (844, true), (853, true), (856, true), (862, true), (928, true), (942, true), (957, true), (977, true), (978, true), (982, true), (995, true), (998, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {24, 32, 35, 81, 104, 134, 137, 156, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998} + [160]
[INFO] [stdout] b all: {160} + [24, 32, 35, 81, 104, 134, 137, 156, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [24, 32, 35, 81, 104, 134, 137, 156, 160, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [24, 32, 35, 81, 104, 134, 137, 156, 160, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [24, 32, 35, 81, 104, 134, 137, 156, 160, 162, 171, 186, 194, 246, 247, 255, 294, 307, 321, 420, 433, 444, 458, 484, 493, 508, 512, 513, 521, 603, 626, 639, 642, 656, 668, 670, 719, 730, 760, 807, 820, 824, 830, 843, 844, 853, 856, 862, 928, 942, 957, 977, 978, 982, 995, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 154, 175, 245, 278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 659, 660, 663, 714, 751, 846, 936, 946, 949}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 950), fp: EncodedCountingMonoid(26, SumMonoid(12931)) }], item_sets: [ItemSet { range: Range(950, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 950), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(950, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 245), fp: EncodedCountingMonoid(6, SumMonoid(748)) }, Fingerprint { range: Range(245, 497), fp: EncodedCountingMonoid(6, SumMonoid(2150)) }, Fingerprint { range: Range(497, 663), fp: EncodedCountingMonoid(7, SumMonoid(4228)) }, Fingerprint { range: Range(663, 950), fp: EncodedCountingMonoid(7, SumMonoid(5805)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 245), fp: EncodedCountingMonoid(3, SumMonoid(572)) }, Fingerprint { range: Range(245, 449), fp: EncodedCountingMonoid(4, SumMonoid(1321)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 663), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(663, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 950), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(245, 381), fp: EncodedCountingMonoid(3, SumMonoid(874)) }], item_sets: [ItemSet { range: Range(136, 173), items: [136, 154], want_response: true }, ItemSet { range: Range(173, 245), items: [175], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587, 589], want_response: true }, ItemSet { range: Range(602, 660), items: [657, 659], want_response: true }, ItemSet { range: Range(660, 663), items: [660], want_response: true }, ItemSet { range: Range(663, 751), items: [663, 714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 949), items: [936, 946], want_response: true }, ItemSet { range: Range(949, 950), items: [949], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 173), items: [], want_response: false }, ItemSet { range: Range(173, 245), items: [173, 184, 215], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 587), items: [497, 512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 660), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(660, 663), items: [], want_response: false }, ItemSet { range: Range(663, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 949), items: [876, 884, 911], want_response: false }, ItemSet { range: Range(949, 950), items: [], want_response: false }, ItemSet { range: Range(245, 316), items: [265, 308], want_response: true }, ItemSet { range: Range(316, 381), items: [316], want_response: true }], wants: [136, 154, 175, 381, 402, 493, 525, 551, 587, 589, 657, 659, 660, 663, 714, 751, 846, 936, 946, 949], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(245, 316), items: [245, 278], want_response: false }, ItemSet { range: Range(316, 381), items: [351], want_response: false }], wants: [173, 184, 215, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 265, 308, 316], provide: [(136, true), (154, true), (175, true), (381, true), (402, true), (493, true), (525, true), (551, true), (587, true), (589, true), (657, true), (659, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true), (949, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [245, 278, 351], provide: [(173, true), (184, true), (215, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(245, true), (278, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 154, 175, 245, 278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 659, 660, 663, 714, 751, 846, 936, 946, 949} + [993, 13, 19, 173, 184, 215, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 154, 175, 381, 402, 493, 525, 551, 587, 589, 657, 659, 660, 663, 714, 751, 846, 936, 946, 949, 245, 278, 351]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 154, 175, 245, 278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 950), fp: EncodedCountingMonoid(25, SumMonoid(12272)) }], item_sets: [ItemSet { range: Range(950, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 950), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(950, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 245), fp: EncodedCountingMonoid(6, SumMonoid(748)) }, Fingerprint { range: Range(245, 497), fp: EncodedCountingMonoid(6, SumMonoid(2150)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(7, SumMonoid(4232)) }, Fingerprint { range: Range(714, 950), fp: EncodedCountingMonoid(6, SumMonoid(5142)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 245), fp: EncodedCountingMonoid(3, SumMonoid(572)) }, Fingerprint { range: Range(245, 449), fp: EncodedCountingMonoid(4, SumMonoid(1321)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 950), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(245, 381), fp: EncodedCountingMonoid(3, SumMonoid(874)) }], item_sets: [ItemSet { range: Range(136, 173), items: [136, 154], want_response: true }, ItemSet { range: Range(173, 245), items: [175], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587, 589], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 949), items: [936, 946], want_response: true }, ItemSet { range: Range(949, 950), items: [949], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 173), items: [], want_response: false }, ItemSet { range: Range(173, 245), items: [173, 184, 215], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 587), items: [497, 512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 949), items: [876, 884, 911], want_response: false }, ItemSet { range: Range(949, 950), items: [], want_response: false }, ItemSet { range: Range(245, 316), items: [265, 308], want_response: true }, ItemSet { range: Range(316, 381), items: [316], want_response: true }], wants: [136, 154, 175, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(245, 316), items: [245, 278], want_response: false }, ItemSet { range: Range(316, 381), items: [351], want_response: false }], wants: [173, 184, 215, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 265, 308, 316], provide: [(136, true), (154, true), (175, true), (381, true), (402, true), (493, true), (525, true), (551, true), (587, true), (589, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true), (949, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [245, 278, 351], provide: [(173, true), (184, true), (215, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(245, true), (278, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 154, 175, 245, 278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949} + [993, 13, 19, 173, 184, 215, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 154, 175, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949, 245, 278, 351]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 154, 175, 278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 950), fp: EncodedCountingMonoid(24, SumMonoid(12027)) }], item_sets: [ItemSet { range: Range(950, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 950), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(950, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(6, SumMonoid(748)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(7, SumMonoid(4232)) }, Fingerprint { range: Range(714, 950), fp: EncodedCountingMonoid(6, SumMonoid(5142)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 950), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(136, 184), fp: EncodedCountingMonoid(3, SumMonoid(465)) }], item_sets: [ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587, 589], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 949), items: [936, 946], want_response: true }, ItemSet { range: Range(949, 950), items: [949], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 587), items: [497, 512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 949), items: [876, 884, 911], want_response: false }, ItemSet { range: Range(949, 950), items: [], want_response: false }, ItemSet { range: Range(136, 184), items: [173], want_response: true }], wants: [278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [136, 154, 175], want_response: false }], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173], provide: [(278, true), (351, true), (381, true), (402, true), (493, true), (525, true), (551, true), (587, true), (589, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true), (949, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [136, 154, 175], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(136, true), (154, true), (175, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 154, 175, 278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949} + [993, 13, 19, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [278, 351, 381, 402, 493, 525, 551, 587, 589, 657, 660, 663, 714, 751, 846, 936, 946, 949, 136, 154, 175]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 154, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946, 949}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 950), fp: EncodedCountingMonoid(23, SumMonoid(11438)) }], item_sets: [ItemSet { range: Range(950, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 950), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(950, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(6, SumMonoid(748)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(6, SumMonoid(3643)) }, Fingerprint { range: Range(714, 950), fp: EncodedCountingMonoid(6, SumMonoid(5142)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 950), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(136, 184), fp: EncodedCountingMonoid(3, SumMonoid(465)) }], item_sets: [ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 949), items: [936, 946], want_response: true }, ItemSet { range: Range(949, 950), items: [949], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 587), items: [497, 512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 949), items: [876, 884, 911], want_response: false }, ItemSet { range: Range(949, 950), items: [], want_response: false }, ItemSet { range: Range(136, 184), items: [173], want_response: true }], wants: [278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946, 949], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [136, 154, 175], want_response: false }], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173], provide: [(278, true), (351, true), (381, true), (402, true), (493, true), (525, true), (551, true), (587, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true), (949, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [136, 154, 175], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(136, true), (154, true), (175, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 154, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946, 949} + [993, 13, 19, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946, 949, 136, 154, 175]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 154, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(22, SumMonoid(10489)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(6, SumMonoid(748)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(6, SumMonoid(3643)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(5, SumMonoid(4193)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(136, 184), fp: EncodedCountingMonoid(3, SumMonoid(465)) }], item_sets: [ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [936, 946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 587), items: [497, 512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }, ItemSet { range: Range(136, 184), items: [173], want_response: true }], wants: [278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [136, 154, 175], want_response: false }], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173], provide: [(278, true), (351, true), (381, true), (402, true), (493, true), (525, true), (551, true), (587, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [136, 154, 175], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(136, true), (154, true), (175, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 154, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946} + [993, 13, 19, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946, 136, 154, 175]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(21, SumMonoid(10335)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(6, SumMonoid(3643)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(5, SumMonoid(4193)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [936, 946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 587), items: [497, 512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (402, true), (493, true), (525, true), (551, true), (587, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {98, 123, 136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(98, 947), fp: EncodedCountingMonoid(20, SumMonoid(10273)) }], item_sets: [ItemSet { range: Range(947, 98), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(98, 512), fp: EncodedCountingMonoid(12, SumMonoid(3896)) }, Fingerprint { range: Range(512, 947), fp: EncodedCountingMonoid(12, SumMonoid(8574)) }], item_sets: [ItemSet { range: Range(947, 98), items: [993, 13, 19, 87, 94], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(98, 351), fp: EncodedCountingMonoid(5, SumMonoid(810)) }, Fingerprint { range: Range(351, 512), fp: EncodedCountingMonoid(4, SumMonoid(1627)) }, Fingerprint { range: Range(512, 714), fp: EncodedCountingMonoid(6, SumMonoid(3643)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(5, SumMonoid(4193)) }], item_sets: [], wants: [993, 13, 19, 87, 94], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(98, 265), fp: EncodedCountingMonoid(4, SumMonoid(674)) }, Fingerprint { range: Range(265, 351), fp: EncodedCountingMonoid(3, SumMonoid(889)) }, Fingerprint { range: Range(351, 480), fp: EncodedCountingMonoid(3, SumMonoid(1356)) }, Fingerprint { range: Range(512, 602), fp: EncodedCountingMonoid(3, SumMonoid(1625)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [ItemSet { range: Range(480, 512), items: [480, 497], want_response: true }], wants: [], provide: [(993, true), (13, true), (19, true), (87, true), (94, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(480, 512), items: [493], want_response: false }, ItemSet { range: Range(98, 136), items: [98, 123], want_response: true }, ItemSet { range: Range(136, 265), items: [136, 175], want_response: true }, ItemSet { range: Range(265, 351), items: [278], want_response: true }, ItemSet { range: Range(351, 402), items: [351, 381], want_response: true }, ItemSet { range: Range(402, 480), items: [402], want_response: true }, ItemSet { range: Range(512, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [936, 946], want_response: true }], wants: [480, 497], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(98, 136), items: [102], want_response: false }, ItemSet { range: Range(136, 265), items: [173, 184, 215], want_response: false }, ItemSet { range: Range(265, 351), items: [265, 308, 316], want_response: false }, ItemSet { range: Range(351, 402), items: [], want_response: false }, ItemSet { range: Range(402, 480), items: [432, 449, 475], want_response: false }, ItemSet { range: Range(512, 587), items: [512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [493, 98, 123, 136, 175, 278, 351, 381, 402, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946], provide: [(480, true), (497, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(493, true), (98, true), (123, true), (136, true), (175, true), (278, true), (351, true), (381, true), (402, true), (525, true), (551, true), (587, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {98, 123, 136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946} + [993, 13, 19, 87, 94, 480, 497, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [493, 98, 123, 136, 175, 278, 351, 381, 402, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 402, 432, 449, 475, 480, 493, 497, 512, 521, 525, 551, 587, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 936, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 402, 432, 449, 475, 480, 493, 497, 512, 521, 525, 551, 587, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 936, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 402, 432, 449, 475, 480, 493, 497, 512, 521, 525, 551, 587, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 936, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(21, SumMonoid(10335)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(6, SumMonoid(3643)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(5, SumMonoid(4193)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 587), items: [525, 551], want_response: true }, ItemSet { range: Range(587, 602), items: [587], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [936, 946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 587), items: [497, 512, 521], want_response: false }, ItemSet { range: Range(587, 602), items: [592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (402, true), (493, true), (525, true), (551, true), (587, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 402, 493, 525, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(20, SumMonoid(9810)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(5, SumMonoid(3118)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(5, SumMonoid(4193)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [551, 587], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [936, 946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (402, true), (493, true), (551, true), (587, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (936, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 936, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(19, SumMonoid(8874)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(5, SumMonoid(3118)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(4, SumMonoid(3257)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [551, 587], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (402, true), (493, true), (551, true), (587, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 402, 493, 551, 587, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 551, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(18, SumMonoid(8287)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(5, SumMonoid(1905)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(4, SumMonoid(2531)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(4, SumMonoid(3257)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381, 402], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [551], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 402, 493, 551, 657, 660, 663, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (402, true), (493, true), (551, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 402, 493, 551, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 402, 493, 551, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(17, SumMonoid(7885)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(4, SumMonoid(2531)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(4, SumMonoid(3257)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [551], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (551, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(16, SumMonoid(7710)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(4, SumMonoid(419)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(4, SumMonoid(2531)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(4, SumMonoid(3257)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 184), items: [123, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [551], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(123, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [62, 98, 123, 136, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(62, true), (98, true), (123, true), (136, true), (278, true), (351, true), (381, true), (493, true), (551, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 136, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 551, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 551, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 551, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(17, SumMonoid(7885)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 714), fp: EncodedCountingMonoid(4, SumMonoid(2531)) }, Fingerprint { range: Range(714, 947), fp: EncodedCountingMonoid(4, SumMonoid(3257)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 714), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(714, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [551], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 714), items: [663], want_response: true }, ItemSet { range: Range(714, 846), items: [714, 751], want_response: true }, ItemSet { range: Range(846, 876), items: [846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 714), items: [], want_response: false }, ItemSet { range: Range(714, 846), items: [758, 781], want_response: false }, ItemSet { range: Range(846, 876), items: [850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (551, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 551, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(16, SumMonoid(7334)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(4, SumMonoid(2694)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 751), items: [663, 714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(15, SumMonoid(6841)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 175), fp: EncodedCountingMonoid(4, SumMonoid(419)) }, Fingerprint { range: Range(175, 497), fp: EncodedCountingMonoid(4, SumMonoid(1185)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(4, SumMonoid(2694)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(175, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 175), items: [102, 173], want_response: true }], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 175), items: [123, 136], want_response: false }, ItemSet { range: Range(175, 351), items: [175, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 751), items: [663, 714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [87, 94, 102, 173], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(175, 351), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [62, 98, 123, 136, 175, 278, 351, 381, 657, 660, 663, 714, 751, 846, 946], provide: [(87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(62, true), (98, true), (123, true), (136, true), (175, true), (278, true), (351, true), (381, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 136, 175, 278, 351, 381, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 657, 660, 663, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(16, SumMonoid(7334)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(4, SumMonoid(2694)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 663), items: [657, 660], want_response: true }, ItemSet { range: Range(663, 751), items: [663, 714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 663), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(663, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (663, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 663, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(15, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(14, SumMonoid(6393)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 175), fp: EncodedCountingMonoid(4, SumMonoid(419)) }, Fingerprint { range: Range(175, 497), fp: EncodedCountingMonoid(4, SumMonoid(1400)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(175, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 175), items: [102, 173], want_response: true }], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 175), items: [123, 136], want_response: false }, ItemSet { range: Range(175, 381), items: [175, 351], want_response: true }, ItemSet { range: Range(381, 432), items: [381], want_response: true }, ItemSet { range: Range(432, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [87, 94, 102, 173], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(175, 381), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(381, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [62, 98, 123, 136, 175, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [(87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(62, true), (98, true), (123, true), (136, true), (175, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 136, 175, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(15, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(14, SumMonoid(6290)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 175), fp: EncodedCountingMonoid(4, SumMonoid(419)) }, Fingerprint { range: Range(175, 497), fp: EncodedCountingMonoid(4, SumMonoid(1297)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(175, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 175), items: [102, 173], want_response: true }], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 175), items: [123, 136], want_response: false }, ItemSet { range: Range(175, 351), items: [175, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351], want_response: true }, ItemSet { range: Range(432, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [87, 94, 102, 173], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(175, 351), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [62, 98, 123, 136, 175, 278, 351, 493, 657, 660, 714, 751, 846, 946], provide: [(87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(62, true), (98, true), (123, true), (136, true), (175, true), (278, true), (351, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 136, 175, 278, 351, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(15, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(14, SumMonoid(6548)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(4, SumMonoid(471)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 136), items: [62, 98], want_response: true }, ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 136), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [62, 98, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(62, true), (98, true), (136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(15, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 847), fp: EncodedCountingMonoid(14, SumMonoid(5725)) }], item_sets: [ItemSet { range: Range(847, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 475), fp: EncodedCountingMonoid(11, SumMonoid(2625)) }, Fingerprint { range: Range(475, 847), fp: EncodedCountingMonoid(11, SumMonoid(6505)) }], item_sets: [ItemSet { range: Range(847, 62), items: [850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 175), fp: EncodedCountingMonoid(4, SumMonoid(419)) }, Fingerprint { range: Range(175, 475), fp: EncodedCountingMonoid(4, SumMonoid(1185)) }, Fingerprint { range: Range(475, 714), fp: EncodedCountingMonoid(3, SumMonoid(1810)) }, Fingerprint { range: Range(714, 847), fp: EncodedCountingMonoid(3, SumMonoid(2311)) }], item_sets: [], wants: [850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(175, 316), fp: EncodedCountingMonoid(4, SumMonoid(972)) }, Fingerprint { range: Range(316, 475), fp: EncodedCountingMonoid(3, SumMonoid(1197)) }, Fingerprint { range: Range(475, 592), fp: EncodedCountingMonoid(5, SumMonoid(2485)) }, Fingerprint { range: Range(592, 714), fp: EncodedCountingMonoid(4, SumMonoid(2481)) }], item_sets: [ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 175), items: [102, 173], want_response: true }, ItemSet { range: Range(714, 847), items: [758, 781], want_response: true }], wants: [], provide: [(850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 175), items: [123, 136], want_response: false }, ItemSet { range: Range(714, 847), items: [714, 751, 846], want_response: false }, ItemSet { range: Range(175, 316), items: [175, 278], want_response: true }, ItemSet { range: Range(316, 475), items: [351, 381], want_response: true }, ItemSet { range: Range(475, 592), items: [493], want_response: true }, ItemSet { range: Range(592, 714), items: [657, 660], want_response: true }], wants: [87, 94, 102, 173, 758, 781], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(175, 316), items: [184, 215, 265, 308], want_response: false }, ItemSet { range: Range(316, 475), items: [316, 432, 449], want_response: false }, ItemSet { range: Range(475, 592), items: [475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(592, 714), items: [592, 602, 636, 651], want_response: false }], wants: [62, 98, 123, 136, 714, 751, 846, 175, 278, 351, 381, 493, 657, 660], provide: [(87, true), (94, true), (102, true), (173, true), (758, true), (781, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651], provide: [(62, true), (98, true), (123, true), (136, true), (714, true), (751, true), (846, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846} + [850, 876, 884, 911, 993, 13, 19, 87, 94, 102, 173, 758, 781, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 136, 714, 751, 846, 175, 278, 351, 381, 493, 657, 660]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(15, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(14, SumMonoid(6535)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(4, SumMonoid(458)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 184), items: [123, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(123, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [62, 98, 123, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(62, true), (98, true), (123, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 657, 660, 714, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(15, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 751), fp: EncodedCountingMonoid(3, SumMonoid(2031)) }, Fingerprint { range: Range(751, 947), fp: EncodedCountingMonoid(3, SumMonoid(2543)) }], item_sets: [], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 602), fp: EncodedCountingMonoid(4, SumMonoid(2122)) }, Fingerprint { range: Range(602, 751), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(751, 876), fp: EncodedCountingMonoid(3, SumMonoid(2389)) }, Fingerprint { range: Range(876, 947), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [], wants: [], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 602), items: [], want_response: true }, ItemSet { range: Range(602, 714), items: [657, 660], want_response: true }, ItemSet { range: Range(714, 751), items: [714], want_response: true }, ItemSet { range: Range(751, 876), items: [751, 846], want_response: true }, ItemSet { range: Range(876, 947), items: [946], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 602), items: [497, 512, 521, 592], want_response: false }, ItemSet { range: Range(602, 714), items: [602, 636, 651], want_response: false }, ItemSet { range: Range(714, 751), items: [], want_response: false }, ItemSet { range: Range(751, 876), items: [758, 781, 850], want_response: false }, ItemSet { range: Range(876, 947), items: [876, 884, 911], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (660, true), (714, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946} + [993, 13, 19, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [136, 175, 278, 351, 381, 493, 657, 660, 714, 751, 846, 946]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 714, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(14, SumMonoid(6011)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }, Fingerprint { range: Range(497, 846), fp: EncodedCountingMonoid(3, SumMonoid(2122)) }], item_sets: [ItemSet { range: Range(846, 947), items: [846, 946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }, Fingerprint { range: Range(497, 636), fp: EncodedCountingMonoid(5, SumMonoid(2724)) }, Fingerprint { range: Range(636, 846), fp: EncodedCountingMonoid(4, SumMonoid(2826)) }], item_sets: [ItemSet { range: Range(846, 947), items: [850, 876, 884, 911], want_response: false }], wants: [846, 946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }, ItemSet { range: Range(497, 636), items: [], want_response: true }, ItemSet { range: Range(636, 751), items: [657, 714], want_response: true }, ItemSet { range: Range(751, 846), items: [751], want_response: true }], wants: [850, 876, 884, 911], provide: [(846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(497, 636), items: [497, 512, 521, 592, 602], want_response: false }, ItemSet { range: Range(636, 751), items: [636, 651], want_response: false }, ItemSet { range: Range(751, 846), items: [758, 781], want_response: false }], wants: [136, 175, 278, 351, 381, 493, 657, 714, 751], provide: [(850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true), (657, true), (714, true), (751, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 714, 751, 846, 946} + [993, 13, 19, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [846, 946, 136, 175, 278, 351, 381, 493, 657, 714, 751]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(13, SumMonoid(5297)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 846), items: [657, 751], want_response: true }, ItemSet { range: Range(846, 947), items: [846, 946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 846), items: [497, 512, 521, 592, 602, 636, 651, 758, 781], want_response: false }, ItemSet { range: Range(846, 947), items: [850, 876, 884, 911], want_response: false }], wants: [657, 751, 846, 946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(657, true), (751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 657, 751, 846, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [657, 751, 846, 946, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(12, SumMonoid(4640)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 946), items: [751, 846], want_response: true }, ItemSet { range: Range(946, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 946), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(946, 947), items: [], want_response: false }], wants: [751, 846, 946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 751, 846, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [751, 846, 946, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 123, 136, 175, 278, 351, 381, 493, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(11, SumMonoid(4542)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(4, SumMonoid(496)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 946), items: [751, 846], want_response: true }, ItemSet { range: Range(946, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 946), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(946, 947), items: [], want_response: false }], wants: [751, 846, 946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 136), items: [62, 123], want_response: true }, ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 136), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [62, 123, 136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (123, true), (136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 123, 136, 175, 278, 351, 381, 493, 751, 846, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [751, 846, 946, 62, 123, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 751, 758, 781, 846, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 751, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(12, SumMonoid(4640)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 946), items: [751, 846], want_response: true }, ItemSet { range: Range(946, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 946), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(946, 947), items: [], want_response: false }], wants: [751, 846, 946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(751, true), (846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 751, 846, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [751, 846, 946, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 846, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(11, SumMonoid(3889)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [846, 946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [846, 946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(846, true), (946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 846, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [846, 946, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(3043)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(9, SumMonoid(2692)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 175), fp: EncodedCountingMonoid(4, SumMonoid(419)) }, Fingerprint { range: Range(175, 497), fp: EncodedCountingMonoid(4, SumMonoid(1327)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(175, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 175), items: [102, 173], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 175), items: [123, 136], want_response: false }, ItemSet { range: Range(175, 381), items: [175, 278], want_response: true }, ItemSet { range: Range(381, 432), items: [381], want_response: true }, ItemSet { range: Range(432, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(175, 381), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(381, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 136, 175, 278, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (136, true), (175, true), (278, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 136, 175, 278, 381, 493]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(3043)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {31, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(31, 947), fp: EncodedCountingMonoid(10, SumMonoid(3012)) }], item_sets: [ItemSet { range: Range(947, 31), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(31, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 31), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(31, 278), fp: EncodedCountingMonoid(5, SumMonoid(563)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(31, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(31, 136), fp: EncodedCountingMonoid(3, SumMonoid(252)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(31, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(31, 102), items: [31, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [31, 98, 123], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {31, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493, 31, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 31, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 31, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 31, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {47, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(47, 947), fp: EncodedCountingMonoid(10, SumMonoid(3028)) }], item_sets: [ItemSet { range: Range(947, 47), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(47, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 47), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(47, 278), fp: EncodedCountingMonoid(5, SumMonoid(579)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(47, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(47, 136), fp: EncodedCountingMonoid(3, SumMonoid(268)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(47, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(47, 102), items: [47, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [47, 98, 123], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(47, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {47, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493, 47, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 47, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 47, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 47, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {55, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(55, 947), fp: EncodedCountingMonoid(10, SumMonoid(3036)) }], item_sets: [ItemSet { range: Range(947, 55), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(55, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 55), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(55, 278), fp: EncodedCountingMonoid(5, SumMonoid(587)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(55, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(55, 136), fp: EncodedCountingMonoid(3, SumMonoid(276)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(55, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(55, 102), items: [55, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [55, 98, 123], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(55, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {55, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493, 55, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 55, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 55, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 55, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {59, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(59, 947), fp: EncodedCountingMonoid(10, SumMonoid(3040)) }], item_sets: [ItemSet { range: Range(947, 59), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(59, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 59), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(59, 278), fp: EncodedCountingMonoid(5, SumMonoid(591)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(59, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(59, 136), fp: EncodedCountingMonoid(3, SumMonoid(280)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(59, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(59, 102), items: [59, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [59, 98, 123], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(59, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {59, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493, 59, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 59, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 59, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 59, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {61, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(61, 947), fp: EncodedCountingMonoid(10, SumMonoid(3042)) }], item_sets: [ItemSet { range: Range(947, 61), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(61, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 61), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(61, 278), fp: EncodedCountingMonoid(5, SumMonoid(593)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(61, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(61, 136), fp: EncodedCountingMonoid(3, SumMonoid(282)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(61, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(61, 102), items: [61, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [61, 98, 123], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(61, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {61, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493, 61, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 61, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 61, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 61, 87, 94, 98, 102, 123, 136, 173, 175, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 175, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(3043)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(594)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(136, 184), items: [136, 175], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [136, 175, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(136, true), (175, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 175, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 136, 175, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 88, 98, 123, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2956)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(507)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 123), fp: EncodedCountingMonoid(3, SumMonoid(248)) }], item_sets: [ItemSet { range: Range(123, 184), items: [123, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(123, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 123), items: [102], want_response: true }], wants: [123, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 88, 98], want_response: false }, ItemSet { range: Range(102, 123), items: [], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(123, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 88, 98], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (88, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 88, 98, 123, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 123, 136, 278, 351, 381, 493, 62, 88, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 88, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 88, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 88, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 132, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(3000)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(551)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 132), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(132, 184), items: [132, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(132, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [132, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(132, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 132, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 132, 136, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 110, 123, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2978)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(529)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 123), fp: EncodedCountingMonoid(3, SumMonoid(270)) }], item_sets: [ItemSet { range: Range(123, 184), items: [123, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(123, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 123), items: [102], want_response: true }], wants: [123, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 123), items: [110], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(123, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 110], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (110, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 110, 123, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 123, 136, 278, 351, 381, 493, 62, 98, 110]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 110, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 110, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 110, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 121, 123, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2989)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(540)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 123), fp: EncodedCountingMonoid(3, SumMonoid(281)) }], item_sets: [ItemSet { range: Range(123, 184), items: [123, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(123, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 123), items: [102], want_response: true }], wants: [123, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 123), items: [121], want_response: false }], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(123, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 121], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (121, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 121, 123, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 123, 136, 278, 351, 381, 493, 62, 98, 121]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 121, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 121, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 121, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 127, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2995)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(546)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 127), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(127, 184), items: [127, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(127, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [127, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(127, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 127, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 127, 136, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2992)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(124, 184), items: [124, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [124, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(9, SumMonoid(2868)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(4, SumMonoid(419)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 184), items: [123, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(123, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [62, 98, 123, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 136, 278, 351, 381, 493]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 493, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 278, 351, 381, 493, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2992)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 278), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(278, 497), fp: EncodedCountingMonoid(4, SumMonoid(1503)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 278), fp: EncodedCountingMonoid(3, SumMonoid(664)) }, Fingerprint { range: Range(278, 449), fp: EncodedCountingMonoid(3, SumMonoid(1056)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(124, 184), items: [124, 136], want_response: true }, ItemSet { range: Range(184, 278), items: [], want_response: true }, ItemSet { range: Range(278, 381), items: [278, 351], want_response: true }, ItemSet { range: Range(381, 449), items: [381], want_response: true }, ItemSet { range: Range(449, 497), items: [493], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 184), items: [173], want_response: false }, ItemSet { range: Range(184, 278), items: [184, 215, 265], want_response: false }, ItemSet { range: Range(278, 381), items: [308, 316], want_response: false }, ItemSet { range: Range(381, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [124, 136, 278, 351, 381, 493], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (278, true), (351, true), (381, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 278, 351, 381, 493, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 278, 351, 381, 493]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 247, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2746)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 247), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(247, 497), fp: EncodedCountingMonoid(4, SumMonoid(1257)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 247), fp: EncodedCountingMonoid(3, SumMonoid(572)) }, Fingerprint { range: Range(247, 449), fp: EncodedCountingMonoid(4, SumMonoid(1321)) }, Fingerprint { range: Range(449, 497), fp: EncodedCountingMonoid(3, SumMonoid(1404)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(173, 247), items: [], want_response: true }, ItemSet { range: Range(247, 351), items: [247, 278], want_response: true }, ItemSet { range: Range(351, 449), items: [351, 381], want_response: true }, ItemSet { range: Range(449, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(173, 247), items: [173, 184, 215], want_response: false }, ItemSet { range: Range(247, 351), items: [265, 308, 316], want_response: false }, ItemSet { range: Range(351, 449), items: [432], want_response: false }, ItemSet { range: Range(449, 497), items: [449, 475, 480], want_response: false }], wants: [124, 136, 247, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (247, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 247, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 247, 278, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(9, SumMonoid(2499)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 497), fp: EncodedCountingMonoid(4, SumMonoid(1146)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(136, 316), items: [136, 278], want_response: true }, ItemSet { range: Range(316, 497), items: [351, 381], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 316), items: [173, 184, 215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 278, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 186, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2685)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 186), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(186, 497), fp: EncodedCountingMonoid(4, SumMonoid(1196)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(186, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 186), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 186), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(186, 351), items: [186, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(186, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 186, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (186, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 186, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 186, 278, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 155, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2654)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 155), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(155, 497), fp: EncodedCountingMonoid(4, SumMonoid(1165)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(155, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 155), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 155), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(155, 316), items: [155, 278], want_response: true }, ItemSet { range: Range(316, 497), items: [351, 381], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 316), items: [173, 184, 215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 155, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (155, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 155, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 155, 278, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 155, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 155, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 155, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 171, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2670)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 171), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(171, 497), fp: EncodedCountingMonoid(4, SumMonoid(1181)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(171, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 171), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 171), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(171, 316), items: [171, 278], want_response: true }, ItemSet { range: Range(316, 497), items: [351, 381], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(171, 316), items: [173, 184, 215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 171, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (171, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 171, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 171, 278, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 171, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 171, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 171, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 179, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 179), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(179, 497), fp: EncodedCountingMonoid(4, SumMonoid(1189)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(179, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 179), items: [102, 173], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 179), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(179, 351), items: [179, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(179, 351), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 179, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (179, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 179, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 179, 278, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 179, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 179, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 179, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 183, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2682)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 183), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(183, 497), fp: EncodedCountingMonoid(4, SumMonoid(1193)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(183, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 183), items: [102, 173], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 183), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(183, 351), items: [183, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(183, 351), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 183, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (183, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 183, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 183, 278, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 183, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 183, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 183, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2684)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(1195)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 351), items: [185, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 278, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 184, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2683)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(184, 497), fp: EncodedCountingMonoid(4, SumMonoid(1194)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(184, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 184), items: [102, 173], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 184), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(184, 351), items: [184, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 351), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 184, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 278, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 215, 265, 278, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 278, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2684)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(1195)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 351), items: [185, 278], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 278, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (278, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 278, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 278, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 139, 185, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2545)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 139), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(139, 497), fp: EncodedCountingMonoid(4, SumMonoid(1056)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(139, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 139), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 139), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(139, 316), items: [139, 185], want_response: true }, ItemSet { range: Range(316, 497), items: [351, 381], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(139, 316), items: [173, 184, 215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 139, 185, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (139, true), (185, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 139, 185, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 139, 185, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 139, 173, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 139, 173, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 139, 173, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 209, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2615)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(1126)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 351), items: [185, 209], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 209, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (209, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 209, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 209, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 174, 185, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2580)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 174), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(174, 497), fp: EncodedCountingMonoid(4, SumMonoid(1091)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(174, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 174), items: [102, 173], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 174), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(174, 351), items: [174, 185], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(174, 351), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 174, 185, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (174, true), (185, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 174, 185, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 174, 185, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 174, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 174, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 174, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 192, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2598)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(1109)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 351), items: [185, 192], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 192, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (192, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 192, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 192, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 183, 185, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2589)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 183), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(183, 497), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(183, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 183), items: [102, 173], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 183), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(183, 351), items: [183, 185], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(183, 351), items: [184, 215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 183, 185, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (183, true), (185, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 183, 185, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 183, 185, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 183, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 183, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 183, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 188, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2594)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(1105)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 351), items: [185, 188], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 188, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (188, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 188, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 188, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(1103)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 351), items: [185, 186], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 186, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (186, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(9, SumMonoid(2406)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 497), fp: EncodedCountingMonoid(4, SumMonoid(1053)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(136, 316), items: [136, 185], want_response: true }, ItemSet { range: Range(316, 497), items: [351, 381], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 316), items: [173, 184, 215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 185, 351, 381]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 215, 265, 308, 316, 351, 381, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 351, 381, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(1103)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 351), items: [185, 186], want_response: true }, ItemSet { range: Range(351, 432), items: [351, 381], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 351), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(351, 432), items: [], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 186, 351, 381], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (186, true), (351, true), (381, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 351, 381, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 351, 381]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 191, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2402)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(913)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 191), items: [185, 186], want_response: true }, ItemSet { range: Range(191, 432), items: [191, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 191), items: [], want_response: false }, ItemSet { range: Range(191, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 186, 191, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (186, true), (191, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 191, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 191, 351]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 96, 98, 123, 124, 136, 185, 186, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2307)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(5, SumMonoid(503)) }, Fingerprint { range: Range(136, 497), fp: EncodedCountingMonoid(4, SumMonoid(858)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 96, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 316), items: [186], want_response: true }, ItemSet { range: Range(316, 497), items: [351], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 316), items: [215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 96, 98, 123, 124, 136, 185, 186, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (96, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 96, 98, 123, 124, 136, 185, 186, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 96, 98, 123, 124, 136, 185, 186, 351]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 96, 98, 102, 123, 124, 136, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 96, 98, 102, 123, 124, 136, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 96, 98, 102, 123, 124, 136, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 144, 185, 186, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2355)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 144), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(144, 497), fp: EncodedCountingMonoid(4, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(144, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 144), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 144), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(144, 186), items: [144, 185], want_response: true }, ItemSet { range: Range(186, 316), items: [186], want_response: true }, ItemSet { range: Range(316, 497), items: [351], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(144, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 316), items: [215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 144, 185, 186, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (144, true), (185, true), (186, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 144, 185, 186, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 144, 185, 186, 351]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 144, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 144, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 144, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 168, 185, 186, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2379)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 168), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(168, 497), fp: EncodedCountingMonoid(4, SumMonoid(890)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(168, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 168), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 168), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(168, 186), items: [168, 185], want_response: true }, ItemSet { range: Range(186, 316), items: [186], want_response: true }, ItemSet { range: Range(316, 497), items: [351], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(168, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 316), items: [215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 168, 185, 186, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (168, true), (185, true), (186, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 168, 185, 186, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 168, 185, 186, 351]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 168, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 168, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 168, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 180, 185, 186, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2391)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 180), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(180, 497), fp: EncodedCountingMonoid(4, SumMonoid(902)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(180, 432), fp: EncodedCountingMonoid(5, SumMonoid(1288)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 180), items: [102, 173], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 180), items: [123, 124, 136], want_response: false }, ItemSet { range: Range(180, 186), items: [180, 185], want_response: true }, ItemSet { range: Range(186, 432), items: [186, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(180, 186), items: [184], want_response: false }, ItemSet { range: Range(186, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 180, 185, 186, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true), (173, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (180, true), (185, true), (186, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 180, 185, 186, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 180, 185, 186, 351]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 180, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 180, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 180, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(9, SumMonoid(2211)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 497), fp: EncodedCountingMonoid(4, SumMonoid(858)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(5, SumMonoid(1145)) }, Fingerprint { range: Range(316, 497), fp: EncodedCountingMonoid(5, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 316), items: [186], want_response: true }, ItemSet { range: Range(316, 497), items: [351], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 316), items: [215, 265, 308], want_response: false }, ItemSet { range: Range(316, 497), items: [316, 432, 449, 475, 480], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 186, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 123, 124, 136, 185, 186, 351]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 189, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2400)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(911)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 189), items: [185, 186], want_response: true }, ItemSet { range: Range(189, 432), items: [189, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 189), items: [], want_response: false }, ItemSet { range: Range(189, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 186, 189, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (186, true), (189, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 189, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 189, 351]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 188, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2399)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(910)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 188), items: [185, 186], want_response: true }, ItemSet { range: Range(188, 432), items: [188, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 188), items: [], want_response: false }, ItemSet { range: Range(188, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 186, 188, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (186, true), (188, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 188, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 188, 351]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2398)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 187, 351]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(9, SumMonoid(2275)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(4, SumMonoid(420)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(62, 124), items: [62, 98], want_response: true }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 124), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [62, 98, 124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102, 215, 265, 308, 316, 432, 449, 475, 480], provide: [(62, true), (98, true), (124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true), (215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 87, 94, 102, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 62, 98, 124, 136, 185, 186, 187, 351]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 93, 98, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2368)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(513)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(253)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 93, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [], want_response: false }], wants: [215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 93, 98], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (93, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 93, 98, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 187, 351, 62, 93, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 93, 94, 98, 102, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 93, 94, 98, 102, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 93, 94, 98, 102, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 108, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2383)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(528)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(268)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [108], want_response: false }], wants: [215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 108], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (108, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 108, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 187, 351, 62, 98, 108]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 108, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 108, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 108, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 116, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2391)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(536)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(276)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [116], want_response: false }], wants: [215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 116], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (116, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 116, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 187, 351, 62, 98, 116]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 116, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 116, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 116, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 120, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2395)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(540)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(280)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [120], want_response: false }], wants: [215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 120], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (120, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 120, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 187, 351, 62, 98, 120]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 120, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 120, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 120, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 122, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2397)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(542)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(282)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [122], want_response: false }], wants: [215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102], provide: [(124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 122], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (122, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 122, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 187, 351, 62, 98, 122]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 122, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 122, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 122, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 946, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 946}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 947), fp: EncodedCountingMonoid(10, SumMonoid(2398)) }], item_sets: [ItemSet { range: Range(947, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 497), fp: EncodedCountingMonoid(13, SumMonoid(3580)) }, Fingerprint { range: Range(497, 947), fp: EncodedCountingMonoid(13, SumMonoid(9071)) }], item_sets: [ItemSet { range: Range(947, 62), items: [993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 497), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(497, 947), items: [946], want_response: true }], wants: [993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(1104)) }, Fingerprint { range: Range(432, 497), fp: EncodedCountingMonoid(4, SumMonoid(1836)) }], item_sets: [ItemSet { range: Range(497, 947), items: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }], wants: [946], provide: [(993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 432), items: [187, 351], want_response: true }, ItemSet { range: Range(432, 497), items: [], want_response: true }], wants: [497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184], provide: [(946, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 432), items: [215, 265, 308, 316], want_response: false }, ItemSet { range: Range(432, 497), items: [432, 449, 475, 480], want_response: false }], wants: [124, 136, 185, 186, 187, 351], provide: [(497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308, 316, 432, 449, 475, 480], provide: [(124, true), (136, true), (185, true), (186, true), (187, true), (351, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true), (316, true), (432, true), (449, true), (475, true), (480, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 946} + [993, 13, 19, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [946, 124, 136, 185, 186, 187, 351]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 473}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 474), fp: EncodedCountingMonoid(10, SumMonoid(1925)) }], item_sets: [ItemSet { range: Range(474, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 265), fp: EncodedCountingMonoid(6, SumMonoid(855)) }, Fingerprint { range: Range(265, 474), fp: EncodedCountingMonoid(5, SumMonoid(1770)) }], item_sets: [ItemSet { range: Range(474, 62), items: [475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 265), fp: EncodedCountingMonoid(4, SumMonoid(694)) }], item_sets: [ItemSet { range: Range(265, 474), items: [351, 473], want_response: true }], wants: [475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(265, 474), items: [265, 308, 316, 432, 449], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }, ItemSet { range: Range(136, 215), items: [173, 184], want_response: true }, ItemSet { range: Range(215, 265), items: [215], want_response: true }], wants: [351, 473], provide: [(475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(136, 215), items: [136, 185, 186, 187], want_response: false }, ItemSet { range: Range(215, 265), items: [], want_response: false }], wants: [265, 308, 316, 432, 449, 87, 94, 102, 173, 184, 215], provide: [(351, true), (473, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 136, 185, 186, 187], provide: [(265, true), (308, true), (316, true), (432, true), (449, true), (87, true), (94, true), (102, true), (173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 473} + [475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 265, 308, 316, 432, 449, 87, 94, 102, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [351, 473, 62, 98, 123, 124, 136, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 473, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 473, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 473, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 710}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 711), fp: EncodedCountingMonoid(10, SumMonoid(2162)) }], item_sets: [ItemSet { range: Range(711, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 449), fp: EncodedCountingMonoid(10, SumMonoid(2176)) }, Fingerprint { range: Range(449, 711), fp: EncodedCountingMonoid(10, SumMonoid(5415)) }], item_sets: [ItemSet { range: Range(711, 62), items: [758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 449), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(449, 711), items: [710], want_response: true }], wants: [758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(185, 316), fp: EncodedCountingMonoid(3, SumMonoid(788)) }], item_sets: [ItemSet { range: Range(449, 711), items: [449, 475, 480, 497, 512, 521, 592, 602, 636, 651], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(316, 449), items: [316, 432], want_response: true }], wants: [710], provide: [(758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(316, 449), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }, ItemSet { range: Range(185, 187), items: [185, 186], want_response: true }, ItemSet { range: Range(187, 316), items: [187], want_response: true }], wants: [449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 173, 184, 316, 432], provide: [(710, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(185, 187), items: [], want_response: false }, ItemSet { range: Range(187, 316), items: [215, 265, 308], want_response: false }], wants: [351, 124, 136, 185, 186, 187], provide: [(449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (592, true), (602, true), (636, true), (651, true), (173, true), (184, true), (316, true), (432, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [215, 265, 308], provide: [(351, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 710} + [758, 781, 850, 876, 884, 911, 993, 13, 19, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 173, 184, 316, 432, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [710, 351, 124, 136, 185, 186, 187]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2044)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 351, 124, 136], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (136, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 136]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 533}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 534), fp: EncodedCountingMonoid(10, SumMonoid(1985)) }], item_sets: [ItemSet { range: Range(534, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 534), fp: EncodedCountingMonoid(8, SumMonoid(3682)) }], item_sets: [ItemSet { range: Range(534, 62), items: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(4, SumMonoid(694)) }], item_sets: [ItemSet { range: Range(316, 534), items: [351, 533], want_response: true }], wants: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 265), fp: EncodedCountingMonoid(3, SumMonoid(572)) }], item_sets: [ItemSet { range: Range(316, 534), items: [316, 432, 449, 475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }, ItemSet { range: Range(265, 316), items: [265, 308], want_response: true }], wants: [351, 533], provide: [(592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(265, 316), items: [], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 265), items: [186, 187], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308], provide: [(351, true), (533, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 265), items: [215], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 186, 187], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 533} + [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [351, 533, 62, 98, 123, 124, 136, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 533, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 533, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 533, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 563}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 564), fp: EncodedCountingMonoid(10, SumMonoid(2015)) }], item_sets: [ItemSet { range: Range(564, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 564), fp: EncodedCountingMonoid(8, SumMonoid(3682)) }], item_sets: [ItemSet { range: Range(564, 62), items: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(4, SumMonoid(694)) }], item_sets: [ItemSet { range: Range(316, 564), items: [351, 563], want_response: true }], wants: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 265), fp: EncodedCountingMonoid(3, SumMonoid(572)) }], item_sets: [ItemSet { range: Range(316, 564), items: [316, 432, 449, 475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }, ItemSet { range: Range(265, 316), items: [265, 308], want_response: true }], wants: [351, 563], provide: [(592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(265, 316), items: [], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 265), items: [186, 187], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308], provide: [(351, true), (563, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 265), items: [215], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 186, 187], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 563} + [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [351, 563, 62, 98, 123, 124, 136, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 563, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 563, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 563, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 578}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 579), fp: EncodedCountingMonoid(10, SumMonoid(2030)) }], item_sets: [ItemSet { range: Range(579, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 579), fp: EncodedCountingMonoid(8, SumMonoid(3682)) }], item_sets: [ItemSet { range: Range(579, 62), items: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(4, SumMonoid(694)) }], item_sets: [ItemSet { range: Range(316, 579), items: [351, 578], want_response: true }], wants: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 265), fp: EncodedCountingMonoid(3, SumMonoid(572)) }], item_sets: [ItemSet { range: Range(316, 579), items: [316, 432, 449, 475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }, ItemSet { range: Range(265, 316), items: [265, 308], want_response: true }], wants: [351, 578], provide: [(592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(265, 316), items: [], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 265), items: [186, 187], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308], provide: [(351, true), (578, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 265), items: [215], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 186, 187], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 578} + [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [351, 578, 62, 98, 123, 124, 136, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 578, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 578, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 578, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 585}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 586), fp: EncodedCountingMonoid(10, SumMonoid(2037)) }], item_sets: [ItemSet { range: Range(586, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 586), fp: EncodedCountingMonoid(8, SumMonoid(3682)) }], item_sets: [ItemSet { range: Range(586, 62), items: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(4, SumMonoid(694)) }], item_sets: [ItemSet { range: Range(316, 586), items: [351, 585], want_response: true }], wants: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 265), fp: EncodedCountingMonoid(3, SumMonoid(572)) }], item_sets: [ItemSet { range: Range(316, 586), items: [316, 432, 449, 475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }, ItemSet { range: Range(265, 316), items: [265, 308], want_response: true }], wants: [351, 585], provide: [(592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(265, 316), items: [], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 265), items: [186, 187], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308], provide: [(351, true), (585, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 265), items: [215], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 186, 187], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 585} + [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [351, 585, 62, 98, 123, 124, 136, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 585, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 585, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 585, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 589}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 590), fp: EncodedCountingMonoid(10, SumMonoid(2041)) }], item_sets: [ItemSet { range: Range(590, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 590), fp: EncodedCountingMonoid(8, SumMonoid(3682)) }], item_sets: [ItemSet { range: Range(590, 62), items: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(4, SumMonoid(694)) }], item_sets: [ItemSet { range: Range(316, 590), items: [351, 589], want_response: true }], wants: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 265), fp: EncodedCountingMonoid(3, SumMonoid(572)) }], item_sets: [ItemSet { range: Range(316, 590), items: [316, 432, 449, 475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }, ItemSet { range: Range(265, 316), items: [265, 308], want_response: true }], wants: [351, 589], provide: [(592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(265, 316), items: [], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 265), items: [186, 187], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308], provide: [(351, true), (589, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 265), items: [215], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 186, 187], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 589} + [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [351, 589, 62, 98, 123, 124, 136, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 589, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 589, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 589, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 591}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 592), fp: EncodedCountingMonoid(10, SumMonoid(2043)) }], item_sets: [ItemSet { range: Range(592, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 592), fp: EncodedCountingMonoid(8, SumMonoid(3682)) }], item_sets: [ItemSet { range: Range(592, 62), items: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 136), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(136, 316), fp: EncodedCountingMonoid(4, SumMonoid(694)) }], item_sets: [ItemSet { range: Range(316, 592), items: [351, 591], want_response: true }], wants: [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 265), fp: EncodedCountingMonoid(3, SumMonoid(572)) }], item_sets: [ItemSet { range: Range(316, 592), items: [316, 432, 449, 475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 136), items: [102], want_response: true }, ItemSet { range: Range(265, 316), items: [265, 308], want_response: true }], wants: [351, 591], provide: [(592, true), (602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 136), items: [123, 124], want_response: false }, ItemSet { range: Range(265, 316), items: [], want_response: false }, ItemSet { range: Range(136, 186), items: [136, 185], want_response: true }, ItemSet { range: Range(186, 265), items: [186, 187], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308], provide: [(351, true), (591, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 265), items: [215], want_response: false }], wants: [62, 98, 123, 124, 136, 185, 186, 187], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215], provide: [(62, true), (98, true), (123, true), (124, true), (136, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 591} + [592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 265, 308, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [351, 591, 62, 98, 123, 124, 136, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 591, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 591, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 136, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 591, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 136, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2044)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(543)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 136], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 351, 124, 136], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (136, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 136, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 136]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 68, 98, 123, 124, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1976)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(475)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 123), fp: EncodedCountingMonoid(3, SumMonoid(228)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(123, 173), items: [123, 124], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(123, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 123), items: [102], want_response: true }], wants: [185, 186, 187, 351, 123, 124], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 68, 98], want_response: false }, ItemSet { range: Range(102, 123), items: [], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (123, true), (124, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 68, 98], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (68, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 68, 98, 123, 124, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 123, 124, 62, 68, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 68, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 68, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 68, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 102, 123, 124, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2010)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(509)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 123), fp: EncodedCountingMonoid(3, SumMonoid(262)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(123, 173), items: [123, 124], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(123, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 123), items: [102], want_response: true }], wants: [185, 186, 187, 351, 123, 124], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 123), items: [102], want_response: false }], wants: [87, 94], provide: [(185, true), (186, true), (187, true), (351, true), (123, true), (124, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98], provide: [(87, true), (94, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 102, 123, 124, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 123, 124, 62, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 119, 123, 124, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2027)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(526)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 123), fp: EncodedCountingMonoid(3, SumMonoid(279)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(123, 173), items: [123, 124], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(123, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 123), items: [102], want_response: true }], wants: [185, 186, 187, 351, 123, 124], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 123), items: [119], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (123, true), (124, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 119], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (119, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 119, 123, 124, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 123, 124, 62, 98, 119]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 119, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 119, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 119, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 128, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2036)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(535)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 128], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 351, 124, 128], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (128, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 128, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 128]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(9, SumMonoid(1908)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 173), items: [123, 124], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(123, 173), items: [], want_response: false }], wants: [185, 186, 187, 351, 62, 98, 123, 124], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (62, true), (98, true), (123, true), (124, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 62, 98, 123, 124]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 126, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2034)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(533)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 126], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 351, 124, 126], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (126, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 126, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 126]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2033)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {49, 62, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(49, 593), fp: EncodedCountingMonoid(10, SumMonoid(1984)) }], item_sets: [ItemSet { range: Range(593, 49), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(49, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 49), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(49, 185), fp: EncodedCountingMonoid(5, SumMonoid(483)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(49, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(49, 124), fp: EncodedCountingMonoid(3, SumMonoid(234)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(49, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(49, 102), items: [49, 62], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [49, 62, 123], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(49, true), (62, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {49, 62, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125, 49, 62, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 49, 62, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 49, 62, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 49, 62, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 74, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2009)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(508)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(259)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 74], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 74, 123], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (74, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 74, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125, 62, 74, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 74, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 74, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 74, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 86, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2021)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(520)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(271)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 86], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 86, 123], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (86, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 86, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125, 62, 86, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 86, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 86, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 86, 87, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 92, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2027)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(526)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(277)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 92], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 92, 123], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (92, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 92, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125, 62, 92, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 92, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 92, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 92, 94, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 95, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2030)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(529)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(280)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 95], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 95, 123], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (95, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 95, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125, 62, 95, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 95, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 95, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 95, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 97, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2032)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(531)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(282)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 97], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 97, 123], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (97, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 97, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316, 87, 94, 102]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125, 62, 97, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 97, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 97, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 97, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 351, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 351, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(2033)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(909)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187], want_response: false }, ItemSet { range: Range(308, 432), items: [351], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 351, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (351, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 351, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 351, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 176, 185, 186, 187, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1858)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 176), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(176, 432), fp: EncodedCountingMonoid(4, SumMonoid(734)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(176, 308), fp: EncodedCountingMonoid(3, SumMonoid(664)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 176), items: [102, 173], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 176), items: [123, 124, 125], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(176, 186), items: [176, 185], want_response: true }, ItemSet { range: Range(186, 308), items: [186, 187], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 173, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(176, 186), items: [184], want_response: false }, ItemSet { range: Range(186, 308), items: [215, 265], want_response: false }], wants: [62, 98, 123, 124, 125, 176, 185, 186, 187], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true), (173, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [184, 215, 265], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (176, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(184, true), (215, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 176, 185, 186, 187, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 173, 308, 316, 184, 215, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 124, 125, 176, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 176, 184, 185, 186, 187, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 176, 184, 185, 186, 187, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 176, 184, 185, 186, 187, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 264, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1946)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(822)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 264], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 264, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (264, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 264, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 264, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 220, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1902)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(778)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 220], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 220, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (220, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 220, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 220, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 198, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1880)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(756)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 198], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 198, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (198, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 198, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 198, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(9, SumMonoid(1682)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 125), fp: EncodedCountingMonoid(4, SumMonoid(407)) }, Fingerprint { range: Range(125, 432), fp: EncodedCountingMonoid(4, SumMonoid(683)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(125, 265), fp: EncodedCountingMonoid(3, SumMonoid(572)) }, Fingerprint { range: Range(265, 432), fp: EncodedCountingMonoid(3, SumMonoid(889)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 125), items: [102], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 125), items: [123, 124], want_response: false }, ItemSet { range: Range(125, 186), items: [125, 185], want_response: true }, ItemSet { range: Range(186, 265), items: [186, 187], want_response: true }, ItemSet { range: Range(265, 432), items: [], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 87, 94, 102], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(125, 186), items: [173, 184], want_response: false }, ItemSet { range: Range(186, 265), items: [215], want_response: false }, ItemSet { range: Range(265, 432), items: [265, 308, 316], want_response: false }], wants: [62, 98, 123, 124, 125, 185, 186, 187], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [173, 184, 215, 265, 308, 316], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 87, 94, 102, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [62, 98, 123, 124, 125, 185, 186, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 193, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1875)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(751)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 193], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 193, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (193, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 193, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 193, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 190, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1872)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(748)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 190], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 190, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (190, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 190, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 190, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 189, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1871)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(747)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 189], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 189, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (189, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 189, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 189, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (781, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 758, 781, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 781, 850, 876, 884, 911, 993} + [185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(9, SumMonoid(1744)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(8, SumMonoid(3958)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512, 521, 592], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308, 316], want_response: true }], wants: [], provide: [(602, true), (636, true), (651, true), (758, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true), (316, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308, 316]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 592, 602, 636, 651, 758, 850, 876, 884, 911, 993} + [185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 602, 636, 651, 758, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 593), fp: EncodedCountingMonoid(8, SumMonoid(3682)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 316), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(316, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(316, 593), items: [316, 432, 449, 475, 480, 497, 512, 521], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 316), items: [308], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (758, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 316), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (521, true), (173, true), (184, true), (215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 521, 173, 184, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 521, 602, 636, 651, 758, 850, 876, 884, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 758, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 593), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 316), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(316, 593), items: [592], want_response: true }], wants: [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(316, 593), items: [316, 432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 316), items: [308], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (758, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 316), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 758, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 758, 850, 876, 884, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 876, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 593), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 876, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 316), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(316, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 876, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(316, 593), items: [316, 432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 316), items: [308], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (876, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 316), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 876, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 876, 884, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 593), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 316), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(316, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(316, 593), items: [316, 432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 316), items: [308], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 316), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 884, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 884, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 593), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 884, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 316), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(316, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 884, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(316, 593), items: [316, 432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 316), items: [308], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (884, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 316), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 884, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 884, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 316), fp: EncodedCountingMonoid(8, SumMonoid(1428)) }, Fingerprint { range: Range(316, 593), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 316), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(316, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(316, 593), items: [316, 432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 316), items: [308], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 316), items: [], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(316, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 316, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 316, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 308), fp: EncodedCountingMonoid(7, SumMonoid(1120)) }, Fingerprint { range: Range(308, 593), fp: EncodedCountingMonoid(7, SumMonoid(3153)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 308), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(308, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(308, 593), items: [308, 432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [308, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(308, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 308, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 102, 173, 184, 215, 265, 308, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(7, SumMonoid(1334)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(6, SumMonoid(2845)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(62, 173), items: [87, 102], want_response: true }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }, ItemSet { range: Range(308, 432), items: [308], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 173), items: [62, 98, 123, 124, 125], want_response: false }, ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(308, 432), items: [], want_response: false }], wants: [432, 449, 475, 480, 497, 512, 87, 102, 173, 184, 215, 265, 308], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 125, 185, 186, 187, 188], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (87, true), (102, true), (173, true), (184, true), (215, true), (265, true), (308, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 87, 102, 173, 184, 215, 265, 308]
[INFO] [stdout] b all: {13, 19, 87, 102, 173, 184, 215, 265, 308, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 62, 98, 123, 124, 125, 185, 186, 187, 188]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 215, 265, 308, 432, 449, 475, 480, 497, 512, 592, 602, 636, 651, 850, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 215, 265, 308, 432, 449, 475, 480, 497, 512, 592, 602, 636, 651, 850, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 215, 265, 308, 432, 449, 475, 480, 497, 512, 592, 602, 636, 651, 850, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 308), fp: EncodedCountingMonoid(7, SumMonoid(1120)) }, Fingerprint { range: Range(308, 593), fp: EncodedCountingMonoid(7, SumMonoid(3153)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 308), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(308, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(308, 593), items: [308, 432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 308), items: [215, 265], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 308), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [308, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(308, true), (432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 308, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 308, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(7, SumMonoid(1120)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(6, SumMonoid(2845)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 432), items: [215, 265], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 432), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 173, 184, 215, 265], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 184, 215, 265, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(6, SumMonoid(947)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(6, SumMonoid(2845)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 185), items: [102, 184], want_response: true }, ItemSet { range: Range(185, 432), items: [215, 265], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 185), items: [123, 124, 125], want_response: false }, ItemSet { range: Range(185, 432), items: [185, 186, 187, 188], want_response: false }], wants: [432, 449, 475, 480, 497, 512, 87, 94, 102, 184, 215, 265], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 125, 185, 186, 187, 188], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (87, true), (94, true), (102, true), (184, true), (215, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 87, 94, 102, 184, 215, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 184, 215, 265, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 62, 98, 123, 124, 125, 185, 186, 187, 188]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 215, 265, 432, 449, 475, 480, 497, 512, 592, 602, 636, 651, 850, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 215, 265, 432, 449, 475, 480, 497, 512, 592, 602, 636, 651, 850, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 215, 265, 432, 449, 475, 480, 497, 512, 592, 602, 636, 651, 850, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(7, SumMonoid(1120)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(6, SumMonoid(2845)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 480, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 432), items: [215, 265], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 432), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 480, 497, 512, 173, 184, 215, 265], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(432, true), (449, true), (475, true), (480, true), (497, true), (512, true), (173, true), (184, true), (215, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 432, 449, 475, 480, 497, 512, 173, 184, 215, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 480, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 265), fp: EncodedCountingMonoid(6, SumMonoid(855)) }, Fingerprint { range: Range(265, 593), fp: EncodedCountingMonoid(6, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 265), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(265, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(265, 593), items: [265, 432, 449, 475, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 265), items: [215], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 265), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [265, 432, 449, 475, 497, 512, 173, 184, 215], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(265, true), (432, true), (449, true), (475, true), (497, true), (512, true), (173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 265, 432, 449, 475, 497, 512, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 215, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(6, SumMonoid(936)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(5, SumMonoid(2365)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 497, 512], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 185), items: [102, 173], want_response: true }, ItemSet { range: Range(185, 432), items: [215, 265], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 185), items: [123, 124, 125], want_response: false }, ItemSet { range: Range(185, 432), items: [185, 186, 187, 188], want_response: false }], wants: [432, 449, 475, 497, 512, 87, 94, 102, 173, 215, 265], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 125, 185, 186, 187, 188], provide: [(432, true), (449, true), (475, true), (497, true), (512, true), (87, true), (94, true), (102, true), (173, true), (215, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 432, 449, 475, 497, 512, 87, 94, 102, 173, 215, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 215, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 62, 98, 123, 124, 125, 185, 186, 187, 188]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 185, 186, 187, 188, 215, 265, 432, 449, 475, 497, 512, 592, 602, 636, 651, 850, 911, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 185, 186, 187, 188, 215, 265, 432, 449, 475, 497, 512, 592, 602, 636, 651, 850, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 19, 62, 87, 94, 98, 102, 123, 124, 125, 173, 185, 186, 187, 188, 215, 265, 432, 449, 475, 497, 512, 592, 602, 636, 651, 850, 911, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 265), fp: EncodedCountingMonoid(6, SumMonoid(855)) }, Fingerprint { range: Range(265, 593), fp: EncodedCountingMonoid(6, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 265), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(265, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(265, 593), items: [265, 432, 449, 475, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 265), items: [215], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 265), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [265, 432, 449, 475, 497, 512, 173, 184, 215], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(265, true), (432, true), (449, true), (475, true), (497, true), (512, true), (173, true), (184, true), (215, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 265, 432, 449, 475, 497, 512, 173, 184, 215]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 215, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(6, SumMonoid(905)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(5, SumMonoid(2365)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 497, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 432), items: [265], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 432), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 497, 512, 173, 184, 265], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(432, true), (449, true), (475, true), (497, true), (512, true), (173, true), (184, true), (265, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 432, 449, 475, 497, 512, 173, 184, 265]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 265, 432, 449, 475, 497, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 265, 432, 449, 475, 512, 602, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 265), fp: EncodedCountingMonoid(5, SumMonoid(640)) }, Fingerprint { range: Range(265, 593), fp: EncodedCountingMonoid(5, SumMonoid(2133)) }], item_sets: [ItemSet { range: Range(593, 62), items: [602, 636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 265), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(265, 593), items: [592], want_response: true }], wants: [602, 636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(265, 593), items: [265, 432, 449, 475, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 265), items: [], want_response: true }], wants: [592], provide: [(602, true), (636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 265), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [265, 432, 449, 475, 512, 173, 184], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(265, true), (432, true), (449, true), (475, true), (512, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [602, 636, 651, 850, 911, 993, 13, 19, 265, 432, 449, 475, 512, 173, 184]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 265, 432, 449, 475, 512, 602, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 265, 432, 449, 475, 512, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 265), fp: EncodedCountingMonoid(5, SumMonoid(640)) }, Fingerprint { range: Range(265, 593), fp: EncodedCountingMonoid(5, SumMonoid(2133)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 265), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(265, 593), items: [592], want_response: true }], wants: [636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(265, 593), items: [265, 432, 449, 475, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 265), items: [], want_response: true }], wants: [592], provide: [(636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 265), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [265, 432, 449, 475, 512, 173, 184], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(265, true), (432, true), (449, true), (475, true), (512, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 651, 850, 911, 993, 13, 19, 265, 432, 449, 475, 512, 173, 184]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 265, 432, 449, 475, 512, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 432, 449, 475, 512, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 432), fp: EncodedCountingMonoid(5, SumMonoid(640)) }, Fingerprint { range: Range(432, 593), fp: EncodedCountingMonoid(4, SumMonoid(1868)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 185), fp: EncodedCountingMonoid(5, SumMonoid(532)) }, Fingerprint { range: Range(185, 432), fp: EncodedCountingMonoid(4, SumMonoid(746)) }], item_sets: [ItemSet { range: Range(432, 593), items: [592], want_response: true }], wants: [636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(432, 593), items: [432, 449, 475, 512], want_response: false }, ItemSet { range: Range(173, 185), items: [173, 184], want_response: true }, ItemSet { range: Range(185, 432), items: [], want_response: true }], wants: [592], provide: [(636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 185), items: [], want_response: false }, ItemSet { range: Range(185, 432), items: [185, 186, 187, 188], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [432, 449, 475, 512, 173, 184], provide: [(592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 124, 125], provide: [(432, true), (449, true), (475, true), (512, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 651, 850, 911, 993, 13, 19, 432, 449, 475, 512, 173, 184]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 432, 449, 475, 512, 636, 651, 850, 911, 993} + [592, 185, 186, 187, 188, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 432, 475, 512, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 593), fp: EncodedCountingMonoid(4, SumMonoid(1603)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(184, 188), fp: EncodedCountingMonoid(3, SumMonoid(558)) }], item_sets: [ItemSet { range: Range(124, 184), items: [124, 125], want_response: true }, ItemSet { range: Range(188, 593), items: [188, 592], want_response: true }], wants: [636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 184), items: [173], want_response: false }, ItemSet { range: Range(188, 593), items: [432, 475, 512], want_response: false }, ItemSet { range: Range(184, 188), items: [184], want_response: true }], wants: [124, 125, 188, 592], provide: [(636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 188), items: [185, 186, 187], want_response: false }], wants: [173, 432, 475, 512, 184], provide: [(124, true), (125, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [185, 186, 187], provide: [(173, true), (432, true), (475, true), (512, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 651, 850, 911, 993, 13, 19, 173, 432, 475, 512, 184]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 432, 475, 512, 636, 651, 850, 911, 993} + [124, 125, 188, 592, 185, 186, 187]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {13, 19, 87, 94, 102, 173, 184, 432, 512, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 593), fp: EncodedCountingMonoid(3, SumMonoid(1128)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 651, 850, 911, 993, 13, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(184, 188), fp: EncodedCountingMonoid(3, SumMonoid(558)) }], item_sets: [ItemSet { range: Range(124, 184), items: [124, 125], want_response: true }, ItemSet { range: Range(188, 593), items: [188, 592], want_response: true }], wants: [636, 651, 850, 911, 993, 13, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 184), items: [173], want_response: false }, ItemSet { range: Range(188, 593), items: [432, 512], want_response: false }, ItemSet { range: Range(184, 188), items: [184], want_response: true }], wants: [124, 125, 188, 592], provide: [(636, true), (651, true), (850, true), (911, true), (993, true), (13, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 188), items: [185, 186, 187], want_response: false }], wants: [173, 432, 512, 184], provide: [(124, true), (125, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [185, 186, 187], provide: [(173, true), (432, true), (512, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 651, 850, 911, 993, 13, 19, 173, 432, 512, 184]
[INFO] [stdout] b all: {13, 19, 87, 94, 102, 173, 184, 432, 512, 636, 651, 850, 911, 993} + [124, 125, 188, 592, 185, 186, 187]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 432, 512, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 184), fp: EncodedCountingMonoid(4, SumMonoid(456)) }, Fingerprint { range: Range(184, 593), fp: EncodedCountingMonoid(3, SumMonoid(1128)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 651, 850, 911, 993, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(184, 188), fp: EncodedCountingMonoid(3, SumMonoid(558)) }], item_sets: [ItemSet { range: Range(124, 184), items: [124, 125], want_response: true }, ItemSet { range: Range(188, 593), items: [188, 592], want_response: true }], wants: [636, 651, 850, 911, 993, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 184), items: [173], want_response: false }, ItemSet { range: Range(188, 593), items: [432, 512], want_response: false }, ItemSet { range: Range(184, 188), items: [184], want_response: true }], wants: [124, 125, 188, 592], provide: [(636, true), (651, true), (850, true), (911, true), (993, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(184, 188), items: [185, 186, 187], want_response: false }], wants: [173, 432, 512, 184], provide: [(124, true), (125, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [185, 186, 187], provide: [(173, true), (432, true), (512, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 651, 850, 911, 993, 19, 173, 432, 512, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 432, 512, 636, 651, 850, 911, 993} + [124, 125, 188, 592, 185, 186, 187]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 432, 636, 651, 850, 911, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 593), fp: EncodedCountingMonoid(3, SumMonoid(789)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 651, 850, 911, 993, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 188), fp: EncodedCountingMonoid(3, SumMonoid(558)) }], item_sets: [ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }, ItemSet { range: Range(188, 593), items: [188, 592], want_response: true }], wants: [636, 651, 850, 911, 993, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(188, 593), items: [432], want_response: false }, ItemSet { range: Range(173, 188), items: [173, 184], want_response: true }], wants: [124, 125, 188, 592], provide: [(636, true), (651, true), (850, true), (911, true), (993, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(173, 188), items: [185, 186, 187], want_response: false }], wants: [432, 173, 184], provide: [(124, true), (125, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [185, 186, 187], provide: [(432, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 651, 850, 911, 993, 19, 432, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 432, 636, 651, 850, 911, 993} + [124, 125, 188, 592, 185, 186, 187]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 432, 636, 651, 850, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 593), fp: EncodedCountingMonoid(3, SumMonoid(789)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 651, 850, 911, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 188), fp: EncodedCountingMonoid(3, SumMonoid(558)) }], item_sets: [ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }, ItemSet { range: Range(188, 593), items: [188, 592], want_response: true }], wants: [636, 651, 850, 911, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(188, 593), items: [432], want_response: false }, ItemSet { range: Range(173, 188), items: [173, 184], want_response: true }], wants: [124, 125, 188, 592], provide: [(636, true), (651, true), (850, true), (911, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(173, 188), items: [185, 186, 187], want_response: false }], wants: [432, 173, 184], provide: [(124, true), (125, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [185, 186, 187], provide: [(432, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 651, 850, 911, 19, 432, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 432, 636, 651, 850, 911} + [124, 125, 188, 592, 185, 186, 187]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 432, 636, 850, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 593), fp: EncodedCountingMonoid(3, SumMonoid(789)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 850, 911, 19], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }, Fingerprint { range: Range(173, 188), fp: EncodedCountingMonoid(3, SumMonoid(558)) }], item_sets: [ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }, ItemSet { range: Range(188, 593), items: [188, 592], want_response: true }], wants: [636, 850, 911, 19], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(188, 593), items: [432], want_response: false }, ItemSet { range: Range(173, 188), items: [173, 184], want_response: true }], wants: [124, 125, 188, 592], provide: [(636, true), (850, true), (911, true), (19, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(173, 188), items: [185, 186, 187], want_response: false }], wants: [432, 173, 184], provide: [(124, true), (125, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [185, 186, 187], provide: [(432, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 850, 911, 19, 432, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 432, 636, 850, 911} + [124, 125, 188, 592, 185, 186, 187]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 636, 850, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 850, 911, 19], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [636, 850, 911, 19, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(636, true), (850, true), (911, true), (19, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 850, 911, 19, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 636, 850, 911} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 173, 184, 636, 850, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(593, 62), items: [636, 850, 911, 19], want_response: false }, ItemSet { range: Range(62, 173), items: [87, 94], want_response: true }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 173), items: [62, 98, 123, 124, 125], want_response: false }, ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }], wants: [636, 850, 911, 19, 87, 94, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 125, 185, 186, 187, 188, 592], provide: [(636, true), (850, true), (911, true), (19, true), (87, true), (94, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 850, 911, 19, 87, 94, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 173, 184, 636, 850, 911} + [62, 98, 123, 124, 125, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [19, 62, 87, 94, 98, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592, 636, 850, 911]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [19, 62, 87, 94, 98, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592, 636, 850, 911], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [19, 62, 87, 94, 98, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592, 636, 850, 911], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 636, 850, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 850, 911, 19], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [636, 850, 911, 19, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(636, true), (850, true), (911, true), (19, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 850, 911, 19, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 636, 850, 911} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 636, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [636, 911, 19], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [636, 911, 19, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(636, true), (911, true), (19, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [636, 911, 19, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 636, 911} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {19, 87, 94, 102, 173, 184, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [911, 19], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [911, 19, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(911, true), (19, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [911, 19, 173, 184]
[INFO] [stdout] b all: {19, 87, 94, 102, 173, 184, 911} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 173, 184, 911}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [911], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [911, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(911, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [911, 173, 184]
[INFO] [stdout] b all: {87, 94, 102, 173, 184, 911} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184]
[INFO] [stdout] b all: {87, 94, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {94, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(62, 173), items: [94, 102], want_response: true }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 173), items: [62, 98, 123, 124, 125], want_response: false }, ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }], wants: [94, 102, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 125, 185, 186, 187, 188, 592], provide: [(94, true), (102, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [94, 102, 173, 184]
[INFO] [stdout] b all: {94, 102, 173, 184} + [62, 98, 123, 124, 125, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 94, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 94, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 94, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184]
[INFO] [stdout] b all: {87, 94, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {47, 87, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(593, 62), items: [47], want_response: false }, ItemSet { range: Range(62, 173), items: [87, 102], want_response: true }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 173), items: [62, 98, 123, 124, 125], want_response: false }, ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }], wants: [47, 87, 102, 173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 125, 185, 186, 187, 188, 592], provide: [(47, true), (87, true), (102, true), (173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [47, 87, 102, 173, 184]
[INFO] [stdout] b all: {47, 87, 102, 173, 184} + [62, 98, 123, 124, 125, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [47, 62, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [47, 62, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [47, 62, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {71, 87, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(260)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [71, 87], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [71, 87, 102], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123], provide: [(71, true), (87, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184, 71, 87, 102]
[INFO] [stdout] b all: {71, 87, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 71, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 71, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 71, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {83, 87, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(272)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [83, 87], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [83, 87, 102], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123], provide: [(83, true), (87, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184, 83, 87, 102]
[INFO] [stdout] b all: {83, 87, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 83, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 83, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 83, 87, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 89, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(278)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 89], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 89, 102], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123], provide: [(87, true), (89, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184, 87, 89, 102]
[INFO] [stdout] b all: {87, 89, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 89, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 89, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 89, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 92, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(281)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 92], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 92, 102], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123], provide: [(87, true), (92, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184, 87, 92, 102]
[INFO] [stdout] b all: {87, 92, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 92, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 92, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 92, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 93, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(282)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 93], want_response: true }, ItemSet { range: Range(102, 124), items: [102], want_response: true }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 124), items: [123], want_response: false }], wants: [87, 93, 102], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123], provide: [(87, true), (93, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184, 87, 93, 102]
[INFO] [stdout] b all: {87, 93, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 93, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 93, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 93, 98, 102, 123, 124, 125, 173, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 173, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 173), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(173, 593), items: [173, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(173, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 173), items: [124, 125], want_response: true }], wants: [173, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 173), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(173, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [173, 184]
[INFO] [stdout] b all: {87, 94, 102, 173, 184} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(62, 102), items: [87, 94], want_response: true }, ItemSet { range: Range(102, 593), items: [102, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [62, 98], want_response: false }, ItemSet { range: Range(102, 593), items: [123, 124, 125, 185, 186, 187, 188, 592], want_response: false }], wants: [87, 94, 102, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 124, 125, 185, 186, 187, 188, 592], provide: [(87, true), (94, true), (102, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [87, 94, 102, 184]
[INFO] [stdout] b all: {87, 94, 102, 184} + [62, 98, 123, 124, 125, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 130, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 130), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(130, 593), items: [130, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(130, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 130), items: [124, 125], want_response: true }], wants: [130, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 130), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(130, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [130, 184]
[INFO] [stdout] b all: {87, 94, 102, 130, 184} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 109, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 109), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(109, 593), items: [109, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(109, 593), items: [123, 124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 109), items: [62, 98], want_response: true }], wants: [109, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 109), items: [87, 94, 102], want_response: false }], wants: [123, 124, 125, 185, 186, 187, 188, 592, 62, 98], provide: [(109, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102], provide: [(123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [109, 184, 87, 94, 102]
[INFO] [stdout] b all: {87, 94, 102, 109, 184} + [123, 124, 125, 185, 186, 187, 188, 592, 62, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 102, 109, 123, 124, 125, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 102, 109, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 102, 109, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 120, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 120), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(120, 593), items: [120, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 593), items: [123, 124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 120), items: [62, 98], want_response: true }], wants: [120, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 120), items: [87, 94, 102], want_response: false }], wants: [123, 124, 125, 185, 186, 187, 188, 592, 62, 98], provide: [(120, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102], provide: [(123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [120, 184, 87, 94, 102]
[INFO] [stdout] b all: {87, 94, 102, 120, 184} + [123, 124, 125, 185, 186, 187, 188, 592, 62, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 102, 120, 123, 124, 125, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 102, 120, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 102, 120, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 125, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 125), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(125, 593), items: [125, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(125, 593), items: [125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 125), items: [123, 124], want_response: true }], wants: [184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 102], want_response: false }, ItemSet { range: Range(123, 125), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 62, 98, 123, 124], provide: [(184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true), (124, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [184, 87, 94, 102]
[INFO] [stdout] b all: {87, 94, 102, 125, 184} + [185, 186, 187, 188, 592, 62, 98, 123, 124]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 102, 123, 124, 125, 184, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 128, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 128), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(128, 593), items: [128, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(128, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 128), items: [124, 125], want_response: true }], wants: [128, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 128), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(128, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [128, 184]
[INFO] [stdout] b all: {87, 94, 102, 128, 184} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 127, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 127), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(127, 593), items: [127, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(127, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 127), items: [124, 125], want_response: true }], wants: [127, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 127), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(127, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [127, 184]
[INFO] [stdout] b all: {87, 94, 102, 127, 184} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 126, 184}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 126), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(126, 593), items: [126, 184], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(126, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 126), items: [124, 125], want_response: true }], wants: [126, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 126), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(126, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 184]
[INFO] [stdout] b all: {87, 94, 102, 126, 184} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 92, 94, 102, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 102), fp: EncodedCountingMonoid(3, SumMonoid(273)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(102, 593), items: [102, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(102, 593), items: [123, 124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 102), items: [62, 98], want_response: true }], wants: [102, 126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 102), items: [87, 92, 94], want_response: false }], wants: [123, 124, 125, 185, 186, 187, 188, 592, 62, 98], provide: [(102, true), (126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 92, 94], provide: [(123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (92, true), (94, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [102, 126, 87, 92, 94]
[INFO] [stdout] b all: {87, 92, 94, 102, 126} + [123, 124, 125, 185, 186, 187, 188, 592, 62, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 92, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 92, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 92, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 126, 138}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 126), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(126, 593), items: [126, 138], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(126, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 126), items: [124, 125], want_response: true }], wants: [126, 138], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 126), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(126, true), (138, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 138]
[INFO] [stdout] b all: {87, 94, 102, 126, 138} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 115, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 115), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(115, 593), items: [115, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(115, 593), items: [123, 124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 115), items: [62, 98], want_response: true }], wants: [115, 126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 115), items: [87, 94, 102], want_response: false }], wants: [123, 124, 125, 185, 186, 187, 188, 592, 62, 98], provide: [(115, true), (126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102], provide: [(123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [115, 126, 87, 94, 102]
[INFO] [stdout] b all: {87, 94, 102, 115, 126} + [123, 124, 125, 185, 186, 187, 188, 592, 62, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 102, 115, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 102, 115, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 102, 115, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 126, 127}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 126), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(126, 593), items: [126, 127], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(126, 593), items: [185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(124, 126), items: [124, 125], want_response: true }], wants: [126, 127], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 126), items: [], want_response: false }], wants: [185, 186, 187, 188, 592, 124, 125], provide: [(126, true), (127, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(185, true), (186, true), (187, true), (188, true), (592, true), (124, true), (125, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 127]
[INFO] [stdout] b all: {87, 94, 102, 126, 127} + [185, 186, 187, 188, 592, 124, 125]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 121, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 121), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(121, 593), items: [121, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(121, 593), items: [123, 124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 121), items: [62, 98], want_response: true }], wants: [121, 126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 121), items: [87, 94, 102], want_response: false }], wants: [123, 124, 125, 185, 186, 187, 188, 592, 62, 98], provide: [(121, true), (126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102], provide: [(123, true), (124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [121, 126, 87, 94, 102]
[INFO] [stdout] b all: {87, 94, 102, 121, 126} + [123, 124, 125, 185, 186, 187, 188, 592, 62, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 102, 121, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 102, 121, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 102, 121, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [125, 185, 186, 187, 188, 592], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126]
[INFO] [stdout] b all: {87, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 123, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 123), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(123, 593), items: [123, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(123, 593), items: [123, 124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 102], want_response: false }], wants: [124, 125, 185, 186, 187, 188, 592, 62, 98], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 102], provide: [(124, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 87, 94, 102]
[INFO] [stdout] b all: {87, 94, 102, 123, 126} + [124, 125, 185, 186, 187, 188, 592, 62, 98]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [125, 185, 186, 187, 188, 592], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126]
[INFO] [stdout] b all: {87, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {51, 87, 94, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(593, 62), items: [51], want_response: false }, ItemSet { range: Range(62, 124), items: [87, 94], want_response: true }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 124), items: [62, 98, 123], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }], wants: [51, 87, 94, 126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 125, 185, 186, 187, 188, 592], provide: [(51, true), (87, true), (94, true), (126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [51, 87, 94, 126]
[INFO] [stdout] b all: {51, 87, 94, 124, 126} + [62, 98, 123, 125, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [51, 62, 87, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [51, 62, 87, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [51, 62, 87, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {77, 87, 94, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(258)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [77, 87, 94], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [77, 87, 94], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(77, true), (87, true), (94, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 77, 87, 94]
[INFO] [stdout] b all: {77, 87, 94, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 77, 87, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 77, 87, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 77, 87, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 90, 94, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(271)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 90, 94], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 90, 94], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (90, true), (94, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 87, 90, 94]
[INFO] [stdout] b all: {87, 90, 94, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 90, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 90, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 90, 94, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 96, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(277)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 96], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 96], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (96, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 87, 94, 96]
[INFO] [stdout] b all: {87, 94, 96, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 96, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 96, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 96, 98, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 99, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(280)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 99], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 99], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (99, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 87, 94, 99]
[INFO] [stdout] b all: {87, 94, 99, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 99, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 99, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 99, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 101, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(282)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [87, 94, 101], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [87, 94, 101], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(87, true), (94, true), (101, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 87, 94, 101]
[INFO] [stdout] b all: {87, 94, 101, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 87, 94, 98, 101, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 87, 94, 98, 101, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 87, 94, 98, 101, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [125, 185, 186, 187, 188, 592], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126]
[INFO] [stdout] b all: {87, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {44, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(593, 62), items: [44], want_response: false }, ItemSet { range: Range(62, 124), items: [94, 102], want_response: true }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 124), items: [62, 98, 123], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }], wants: [44, 94, 102, 126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [62, 98, 123, 125, 185, 186, 187, 188, 592], provide: [(44, true), (94, true), (102, true), (126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (98, true), (123, true), (125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [44, 94, 102, 126]
[INFO] [stdout] b all: {44, 94, 102, 124, 126} + [62, 98, 123, 125, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [44, 62, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [44, 62, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [44, 62, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {66, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(262)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [66, 94, 102], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [66, 94, 102], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(66, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 66, 94, 102]
[INFO] [stdout] b all: {66, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 66, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 66, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 66, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {77, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(273)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [77, 94, 102], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [77, 94, 102], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(77, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 77, 94, 102]
[INFO] [stdout] b all: {77, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 77, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 77, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 77, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {82, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(278)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [82, 94, 102], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [82, 94, 102], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(82, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 82, 94, 102]
[INFO] [stdout] b all: {82, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 82, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 82, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 82, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {85, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(281)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [85, 94, 102], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [85, 94, 102], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(85, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 85, 94, 102]
[INFO] [stdout] b all: {85, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 85, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 85, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 85, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {86, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(282)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }, ItemSet { range: Range(62, 123), items: [62, 98], want_response: true }, ItemSet { range: Range(123, 124), items: [123], want_response: true }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(62, 123), items: [86, 94, 102], want_response: false }, ItemSet { range: Range(123, 124), items: [], want_response: false }], wants: [125, 185, 186, 187, 188, 592, 62, 98, 123], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [86, 94, 102], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true), (62, true), (98, true), (123, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(86, true), (94, true), (102, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126, 86, 94, 102]
[INFO] [stdout] b all: {86, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592, 62, 98, 123]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [62, 86, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [62, 86, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [62, 86, 94, 98, 102, 123, 124, 125, 126, 185, 186, 187, 188, 592], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592}
[INFO] [stdout] b items: {87, 94, 102, 124, 126}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(62, 593), fp: EncodedCountingMonoid(10, SumMonoid(1870)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(62, 124), fp: EncodedCountingMonoid(3, SumMonoid(283)) }], item_sets: [ItemSet { range: Range(593, 62), items: [], want_response: false }, ItemSet { range: Range(124, 593), items: [124, 126], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(124, 593), items: [124, 125, 185, 186, 187, 188, 592], want_response: false }], wants: [126], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [125, 185, 186, 187, 188, 592], provide: [(126, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(125, true), (185, true), (186, true), (187, true), (188, true), (592, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {62, 98, 123, 124, 125, 185, 186, 187, 188, 592} + [126]
[INFO] [stdout] b all: {87, 94, 102, 124, 126} + [125, 185, 186, 187, 188, 592]
[INFO] [stdout] proptest: failed to append to /opt/rustwide/workdir/proptest-regressions/protocol/mod.txt: Read-only file system (os error 30)
[INFO] [stdout] thread 'protocol::tests::protocol_correctness' panicked at src/protocol/mod.rs:356:5:
[INFO] [stdout] Test failed: assertion failed: `(left == right)` 
[INFO] [stdout]   left: `1`,
[INFO] [stdout]  right: `4` at src/protocol/mod.rs:415; minimal failing input: items_party_a = [62, 124, 185, 186, 187, 123, 592, 125, 98, 188], items_party_b = [94, 126, 124, 102, 87]
[INFO] [stdout] 	successes: 103
[INFO] [stdout] 	local rejects: 0
[INFO] [stdout] 	global rejects: 0
[INFO] [stdout] 
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c32c9f4256 - std::backtrace_rs::backtrace::libunwind::trace::hbee8a7973eeb6c93
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x55c32c9f4256 - std::backtrace_rs::backtrace::trace_unsynchronized::hc8ac75eea3aa6899
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55c32c9f4256 - std::sys_common::backtrace::_print_fmt::hc7f3e3b5298b1083
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x55c32c9f4256 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb235daedd7c6190
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x55c32ca1deb0 - core::fmt::rt::Argument::fmt::h76c38a80d925a410
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x55c32ca1deb0 - core::fmt::write::h3ed6aeaa977c8e45
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x55c32c9f15ff - std::io::Write::write_fmt::h1299aa7741865f2b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/io/mod.rs:1810:15
[INFO] [stdout]    7:     0x55c32c9f4034 - std::sys_common::backtrace::_print::h5d645a07e0fcfdbb
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x55c32c9f4034 - std::sys_common::backtrace::print::h85035a511aafe7a8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x55c32c9f5da7 - std::panicking::default_hook::{{closure}}::hcce8cea212785a25
[INFO] [stdout]   10:     0x55c32c9f5a8d - std::panicking::default_hook::hf5fcb0f213fe709a
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x55c32c923f37 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h60265c2dfa87ee34
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x55c32c923f37 - test::test_main::{{closure}}::h77865bd3127078c6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x55c32c9f63c6 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbc5ccf4eb663e1e5
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x55c32c9f63c6 - std::panicking::rust_panic_with_hook::h095fccf1dc9379ee
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
[INFO] [stdout]   15:     0x55c32c9f6112 - std::panicking::begin_panic_handler::{{closure}}::h032ba12139b353db
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:657:13
[INFO] [stdout]   16:     0x55c32c9f4756 - std::sys_common::backtrace::__rust_end_short_backtrace::h9259bc2ff8fd0f76
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x55c32c9f5e70 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
[INFO] [stdout]   18:     0x55c32c6f22f5 - core::panicking::panic_fmt::h784f20a50eaab275
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x55c32c855da4 - unionize::protocol::tests::protocol_correctness::h049432a8f892e323
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/proptest-1.1.0/src/sugar.rs:163:17
[INFO] [stdout]   20:     0x55c32c8557f7 - unionize::protocol::tests::protocol_correctness::{{closure}}::h453e0f8ed977272a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/proptest-1.1.0/src/sugar.rs:159:28
[INFO] [stdout]   21:     0x55c32c867646 - core::ops::function::FnOnce::call_once::h10ebe23eec3eba5b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x55c32c92980f - core::ops::function::FnOnce::call_once::h8dc6907944022cf6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x55c32c92980f - test::__rust_begin_short_backtrace::haae1a87433f1efb3
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:627:18
[INFO] [stdout]   24:     0x55c32c928591 - test::run_test_in_process::{{closure}}::h8c7decfa7c14e152
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:60
[INFO] [stdout]   25:     0x55c32c928591 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h19e6ff056d9d21e9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   26:     0x55c32c928591 - std::panicking::try::do_call::h89c848fcaa37c035
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   27:     0x55c32c928591 - std::panicking::try::h57ab3dc74e2839b8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   28:     0x55c32c928591 - std::panic::catch_unwind::hfb6a1b1abc120fb9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   29:     0x55c32c928591 - test::run_test_in_process::h5ae2f9875edd562d
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:27
[INFO] [stdout]   30:     0x55c32c928591 - test::run_test::{{closure}}::h35d7300d8928a067
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:573:43
[INFO] [stdout]   31:     0x55c32c8ef8c6 - test::run_test::{{closure}}::h7525ced405d23d1b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:601:41
[INFO] [stdout]   32:     0x55c32c8ef8c6 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4e7db78ce05afad8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   33:     0x55c32c8f4927 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcfbcb64f1a1b3482
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   34:     0x55c32c8f4927 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9d89c5c4108bd689
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   35:     0x55c32c8f4927 - std::panicking::try::do_call::h8a4869bc94ec50c9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   36:     0x55c32c8f4927 - std::panicking::try::h9a576f20ff81ac30
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   37:     0x55c32c8f4927 - std::panic::catch_unwind::hbcb4e3f860ef9830
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   38:     0x55c32c8f4927 - std::thread::Builder::spawn_unchecked_::{{closure}}::h93c79a6be1505948
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   39:     0x55c32c8f4927 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h426d96740c81bdaf
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x55c32c9fb1f5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h12de4fc57affb195
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   41:     0x55c32c9fb1f5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3c619f45059d5cf1
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   42:     0x55c32c9fb1f5 - std::sys::unix::thread::Thread::new::thread_start::hbac657605e4b7389
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   43:     0x7f60467d5ac3 - <unknown>
[INFO] [stdout]   44:     0x7f6046866bf4 - __clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     protocol::tests::protocol_correctness
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 11 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.29s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "792535ca796d7f9ff2e9cad8d533cb7629e1038005080c4e754400a570a2e42b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "792535ca796d7f9ff2e9cad8d533cb7629e1038005080c4e754400a570a2e42b", kill_on_drop: false }`
[INFO] [stdout] 792535ca796d7f9ff2e9cad8d533cb7629e1038005080c4e754400a570a2e42b
[INFO] testing unionize-0.3.0 against beta-2024-02-10 for beta-1.77-1
[INFO] extracting crate unionize 0.3.0 into /workspace/builds/worker-7-tc2/source
[INFO] validating manifest of crates.io crate unionize 0.3.0 on toolchain beta-2024-02-10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate unionize 0.3.0
[INFO] finished tweaking crates.io crate unionize 0.3.0
[INFO] tweaked toml for crates.io crate unionize 0.3.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate crates.io crate unionize 0.3.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2cdd4bbc0419d97b46b1dd13bf63fd71ef9781c880a49792a8dc8a4991860bfc
[INFO] running `Command { std: "docker" "start" "-a" "2cdd4bbc0419d97b46b1dd13bf63fd71ef9781c880a49792a8dc8a4991860bfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2cdd4bbc0419d97b46b1dd13bf63fd71ef9781c880a49792a8dc8a4991860bfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2cdd4bbc0419d97b46b1dd13bf63fd71ef9781c880a49792a8dc8a4991860bfc", kill_on_drop: false }`
[INFO] [stdout] 2cdd4bbc0419d97b46b1dd13bf63fd71ef9781c880a49792a8dc8a4991860bfc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bcf0b4ca31eae5d2e56795b77d990b506202e970dcbc7696bc541f9a61c92f83
[INFO] running `Command { std: "docker" "start" "-a" "bcf0b4ca31eae5d2e56795b77d990b506202e970dcbc7696bc541f9a61c92f83", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.141
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling quote v1.0.27
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling prettyplease v0.2.5
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.56
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling clang-sys v1.6.1
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling syn v2.0.16
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling bindgen v0.65.1
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling shlex v1.1.0
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rustix v0.37.11
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling libm v0.2.6
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling serde v1.0.164
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling procinfo v0.4.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling digest v0.10.6
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling cpufeatures v0.2.7
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling nom v2.2.1
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling sha2 v0.10.6
[INFO] [stderr]    Compiling sise v0.8.0
[INFO] [stderr]    Compiling serde_derive v1.0.164
[INFO] [stderr]    Compiling proptest v1.1.0
[INFO] [stderr]    Compiling xs233-sys v0.2.0
[INFO] [stderr]    Compiling serde_cbor v0.10.2
[INFO] [stderr]    Compiling xs233 v0.3.0
[INFO] [stderr]    Compiling unionize v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tree/mem_rc_bounds/mod.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Tree<M: Monoid>(Rc<Node<M>>);
[INFO] [stdout]    |            ----            ^^^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Tree<M: Monoid>(());
[INFO] [stdout]    |                            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 37.39s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "bcf0b4ca31eae5d2e56795b77d990b506202e970dcbc7696bc541f9a61c92f83", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bcf0b4ca31eae5d2e56795b77d990b506202e970dcbc7696bc541f9a61c92f83", kill_on_drop: false }`
[INFO] [stdout] bcf0b4ca31eae5d2e56795b77d990b506202e970dcbc7696bc541f9a61c92f83
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e47b98d134a7ee43bac1055b2ed3516d11429b9c6c945b06b8c332abdb1cb243
[INFO] running `Command { std: "docker" "start" "-a" "e47b98d134a7ee43bac1055b2ed3516d11429b9c6c945b06b8c332abdb1cb243", kill_on_drop: false }`
[INFO] [stderr]    Compiling unionize v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tree/mem_rc_bounds/mod.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Tree<M: Monoid>(Rc<Node<M>>);
[INFO] [stdout]    |            ----            ^^^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Tree<M: Monoid>(());
[INFO] [stdout]    |                            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tree/mem_rc_bounds/mod.rs:11:28
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Tree<M: Monoid>(Rc<Node<M>>);
[INFO] [stdout]    |            ----            ^^^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Tree<M: Monoid>(());
[INFO] [stdout]    |                            ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 3.15s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "e47b98d134a7ee43bac1055b2ed3516d11429b9c6c945b06b8c332abdb1cb243", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e47b98d134a7ee43bac1055b2ed3516d11429b9c6c945b06b8c332abdb1cb243", kill_on_drop: false }`
[INFO] [stdout] e47b98d134a7ee43bac1055b2ed3516d11429b9c6c945b06b8c332abdb1cb243
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3fa7d0eee5dc35970947082e4df5b27e9f4439e84f76ab7d8408c9c3f603db3e
[INFO] running `Command { std: "docker" "start" "-a" "3fa7d0eee5dc35970947082e4df5b27e9f4439e84f76ab7d8408c9c3f603db3e", kill_on_drop: false }`
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/tree/mem_rc_bounds/mod.rs:11:28
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct Tree<M: Monoid>(Rc<Node<M>>);
[INFO] [stderr]    |            ----            ^^^^^^^^^^^
[INFO] [stderr]    |            |
[INFO] [stderr]    |            field in this struct
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct Tree<M: Monoid>(());
[INFO] [stderr]    |                            ~~
[INFO] [stderr] 
[INFO] [stderr] warning: `unionize` (lib) generated 1 warning
[INFO] [stderr] warning: `unionize` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/unionize-49f5bcf6ec50b4ef)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test monoid::timestamped::tests::timestamped_is_protocolmonoid ... ok
[INFO] [stdout] test query::item_filter::tests::base_test ... ok
[INFO] [stdout] test query::item_filter::tests::repro_atttempt ... ok
[INFO] [stdout] test monoid::mulhash_xs233::tests::serialize_correctness ... ok
[INFO] [stdout] test item::le_byte_array::tests::serialize_correctness ... ok
[INFO] [stdout] test range::tests::serialize_correctness ... ok
[INFO] [stdout] test query::split::test::split_correctness ... ok
[INFO] [stdout] test query::simple::test::simple_correctness ... ok
[INFO] [stdout] test protocol::tests::protocol_correctness ... FAILED
[INFO] [stdout] test protocol::tests::serialize_correctness ... ok
[INFO] [stdout] test protocol::tests::serialize_correctness_stream ... ok
[INFO] [stdout] test monoid::mulhash_xs233::tests::xsk_lift_and_add_100k_items ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- protocol::tests::protocol_correctness stdout ----
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 356, 386, 392, 405, 422, 443, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 694, 695, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 909, 927, 953, 955, 966, 971, 996}
[INFO] [stdout] b items: {8, 22, 33, 94, 95, 128, 168, 208, 269, 274, 277, 282, 345, 356, 364, 378, 392, 411, 415, 420, 425, 443, 511, 546, 566, 616, 637, 641, 691, 696, 714, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 909, 925}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 997), fp: EncodedCountingMonoid(80, SumMonoid(39378)) }], item_sets: [ItemSet { range: Range(997, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 511), fp: EncodedCountingMonoid(21, SumMonoid(5799)) }, Fingerprint { range: Range(511, 997), fp: EncodedCountingMonoid(21, SumMonoid(15576)) }], item_sets: [ItemSet { range: Range(997, 12), items: [8], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 221), fp: EncodedCountingMonoid(21, SumMonoid(2528)) }, Fingerprint { range: Range(221, 511), fp: EncodedCountingMonoid(20, SumMonoid(7200)) }, Fingerprint { range: Range(511, 787), fp: EncodedCountingMonoid(20, SumMonoid(12783)) }, Fingerprint { range: Range(787, 997), fp: EncodedCountingMonoid(19, SumMonoid(16867)) }], item_sets: [], wants: [8], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 128), fp: EncodedCountingMonoid(4, SumMonoid(244)) }, Fingerprint { range: Range(128, 221), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(221, 378), fp: EncodedCountingMonoid(7, SumMonoid(2167)) }, Fingerprint { range: Range(378, 511), fp: EncodedCountingMonoid(7, SumMonoid(2884)) }, Fingerprint { range: Range(511, 691), fp: EncodedCountingMonoid(6, SumMonoid(3517)) }, Fingerprint { range: Range(691, 787), fp: EncodedCountingMonoid(6, SumMonoid(4341)) }, Fingerprint { range: Range(787, 882), fp: EncodedCountingMonoid(5, SumMonoid(4107)) }, Fingerprint { range: Range(882, 997), fp: EncodedCountingMonoid(4, SumMonoid(3611)) }], item_sets: [], wants: [], provide: [(8, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 60), fp: EncodedCountingMonoid(5, SumMonoid(178)) }, Fingerprint { range: Range(60, 128), fp: EncodedCountingMonoid(5, SumMonoid(405)) }, Fingerprint { range: Range(128, 195), fp: EncodedCountingMonoid(6, SumMonoid(927)) }, Fingerprint { range: Range(195, 221), fp: EncodedCountingMonoid(5, SumMonoid(1018)) }, Fingerprint { range: Range(221, 300), fp: EncodedCountingMonoid(6, SumMonoid(1537)) }, Fingerprint { range: Range(300, 378), fp: EncodedCountingMonoid(5, SumMonoid(1631)) }, Fingerprint { range: Range(378, 478), fp: EncodedCountingMonoid(5, SumMonoid(2048)) }, Fingerprint { range: Range(478, 511), fp: EncodedCountingMonoid(4, SumMonoid(1984)) }, Fingerprint { range: Range(511, 601), fp: EncodedCountingMonoid(7, SumMonoid(3941)) }, Fingerprint { range: Range(601, 691), fp: EncodedCountingMonoid(7, SumMonoid(4419)) }, Fingerprint { range: Range(691, 748), fp: EncodedCountingMonoid(3, SumMonoid(2129)) }, Fingerprint { range: Range(748, 787), fp: EncodedCountingMonoid(3, SumMonoid(2294)) }, Fingerprint { range: Range(787, 858), fp: EncodedCountingMonoid(5, SumMonoid(4082)) }, Fingerprint { range: Range(858, 882), fp: EncodedCountingMonoid(5, SumMonoid(4320)) }, Fingerprint { range: Range(882, 955), fp: EncodedCountingMonoid(5, SumMonoid(4577)) }, Fingerprint { range: Range(955, 997), fp: EncodedCountingMonoid(4, SumMonoid(3888)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(378, 420), fp: EncodedCountingMonoid(4, SumMonoid(1596)) }, Fingerprint { range: Range(420, 478), fp: EncodedCountingMonoid(3, SumMonoid(1288)) }, Fingerprint { range: Range(691, 729), fp: EncodedCountingMonoid(3, SumMonoid(2101)) }], item_sets: [ItemSet { range: Range(12, 60), items: [22, 33], want_response: true }, ItemSet { range: Range(60, 128), items: [94, 95], want_response: true }, ItemSet { range: Range(128, 195), items: [128, 168], want_response: true }, ItemSet { range: Range(195, 221), items: [208], want_response: true }, ItemSet { range: Range(221, 277), items: [269, 274], want_response: true }, ItemSet { range: Range(277, 300), items: [277, 282], want_response: true }, ItemSet { range: Range(300, 364), items: [345, 356], want_response: true }, ItemSet { range: Range(364, 378), items: [364], want_response: true }, ItemSet { range: Range(478, 511), items: [], want_response: true }, ItemSet { range: Range(511, 566), items: [511, 546], want_response: true }, ItemSet { range: Range(566, 601), items: [566], want_response: true }, ItemSet { range: Range(601, 641), items: [616, 637], want_response: true }, ItemSet { range: Range(641, 691), items: [641], want_response: true }, ItemSet { range: Range(729, 748), items: [729, 735], want_response: true }, ItemSet { range: Range(748, 787), items: [776], want_response: true }, ItemSet { range: Range(787, 815), items: [790, 791], want_response: true }, ItemSet { range: Range(815, 858), items: [815, 844], want_response: true }, ItemSet { range: Range(858, 882), items: [867], want_response: true }, ItemSet { range: Range(882, 909), items: [882, 895], want_response: true }, ItemSet { range: Range(909, 955), items: [909, 925], want_response: true }, ItemSet { range: Range(955, 997), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 60), items: [12, 26, 31, 50, 59], want_response: false }, ItemSet { range: Range(60, 128), items: [60, 72, 74, 75, 124], want_response: false }, ItemSet { range: Range(128, 195), items: [137, 140, 141, 142, 175, 192], want_response: false }, ItemSet { range: Range(195, 221), items: [195, 202, 206, 207, 208], want_response: false }, ItemSet { range: Range(221, 277), items: [221, 231, 248, 266], want_response: false }, ItemSet { range: Range(277, 300), items: [285, 286], want_response: false }, ItemSet { range: Range(300, 364), items: [300, 318, 328, 329, 356], want_response: false }, ItemSet { range: Range(364, 378), items: [], want_response: false }, ItemSet { range: Range(478, 511), items: [478, 495, 502, 509], want_response: false }, ItemSet { range: Range(511, 566), items: [515, 538, 558, 564], want_response: false }, ItemSet { range: Range(566, 601), items: [572, 596, 598], want_response: false }, ItemSet { range: Range(601, 641), items: [601, 610, 622, 636, 639], want_response: false }, ItemSet { range: Range(641, 691), items: [646, 665], want_response: false }, ItemSet { range: Range(729, 748), items: [740], want_response: false }, ItemSet { range: Range(748, 787), items: [748, 771, 775], want_response: false }, ItemSet { range: Range(787, 815), items: [787, 795, 814], want_response: false }, ItemSet { range: Range(815, 858), items: [837, 849], want_response: false }, ItemSet { range: Range(858, 882), items: [858, 859, 863, 864, 876], want_response: false }, ItemSet { range: Range(882, 909), items: [892, 896], want_response: false }, ItemSet { range: Range(909, 955), items: [909, 927, 953], want_response: false }, ItemSet { range: Range(955, 997), items: [955, 966, 971, 996], want_response: false }, ItemSet { range: Range(378, 405), items: [386, 392], want_response: true }, ItemSet { range: Range(405, 420), items: [405], want_response: true }, ItemSet { range: Range(420, 478), items: [422, 443], want_response: true }, ItemSet { range: Range(691, 729), items: [694, 695], want_response: true }], wants: [22, 33, 94, 95, 128, 168, 269, 274, 277, 282, 345, 364, 511, 546, 566, 616, 637, 641, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 925], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(378, 405), items: [378, 392], want_response: false }, ItemSet { range: Range(405, 420), items: [411, 415], want_response: false }, ItemSet { range: Range(420, 478), items: [420, 425, 443], want_response: false }, ItemSet { range: Range(691, 729), items: [691, 696, 714], want_response: false }], wants: [12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 927, 953, 955, 966, 971, 996, 386, 405, 422, 694, 695], provide: [(22, true), (33, true), (94, true), (95, true), (128, true), (168, true), (269, true), (274, true), (277, true), (282, true), (345, true), (364, true), (511, true), (546, true), (566, true), (616, true), (637, true), (641, true), (729, true), (735, true), (776, true), (790, true), (791, true), (815, true), (844, true), (867, true), (882, true), (895, true), (925, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [378, 411, 415, 420, 425, 691, 696, 714], provide: [(12, true), (26, true), (31, true), (50, true), (59, true), (60, true), (72, true), (74, true), (75, true), (124, true), (137, true), (140, true), (141, true), (142, true), (175, true), (192, true), (195, true), (202, true), (206, true), (207, true), (221, true), (231, true), (248, true), (266, true), (285, true), (286, true), (300, true), (318, true), (328, true), (329, true), (478, true), (495, true), (502, true), (509, true), (515, true), (538, true), (558, true), (564, true), (572, true), (596, true), (598, true), (601, true), (610, true), (622, true), (636, true), (639, true), (646, true), (665, true), (740, true), (748, true), (771, true), (775, true), (787, true), (795, true), (814, true), (837, true), (849, true), (858, true), (859, true), (863, true), (864, true), (876, true), (892, true), (896, true), (927, true), (953, true), (955, true), (966, true), (971, true), (996, true), (386, true), (405, true), (422, true), (694, true), (695, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(378, true), (411, true), (415, true), (420, true), (425, true), (691, true), (696, true), (714, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 356, 386, 392, 405, 422, 443, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 694, 695, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 909, 927, 953, 955, 966, 971, 996} + [8, 22, 33, 94, 95, 128, 168, 269, 274, 277, 282, 345, 364, 511, 546, 566, 616, 637, 641, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 925, 378, 411, 415, 420, 425, 691, 696, 714]
[INFO] [stdout] b all: {8, 22, 33, 94, 95, 128, 168, 208, 269, 274, 277, 282, 345, 356, 364, 378, 392, 411, 415, 420, 425, 443, 511, 546, 566, 616, 637, 641, 691, 696, 714, 729, 735, 776, 790, 791, 815, 844, 867, 882, 895, 909, 925} + [12, 26, 31, 50, 59, 60, 72, 74, 75, 124, 137, 140, 141, 142, 175, 192, 195, 202, 206, 207, 221, 231, 248, 266, 285, 286, 300, 318, 328, 329, 478, 495, 502, 509, 515, 538, 558, 564, 572, 596, 598, 601, 610, 622, 636, 639, 646, 665, 740, 748, 771, 775, 787, 795, 814, 837, 849, 858, 859, 863, 864, 876, 892, 896, 927, 953, 955, 966, 971, 996, 386, 405, 422, 694, 695]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 12, 22, 26, 31, 33, 50, 59, 60, 72, 74, 75, 94, 95, 124, 128, 137, 140, 141, 142, 168, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 269, 274, 277, 282, 285, 286, 300, 318, 328, 329, 345, 356, 364, 378, 386, 392, 405, 411, 415, 420, 422, 425, 443, 478, 495, 502, 509, 511, 515, 538, 546, 558, 564, 566, 572, 596, 598, 601, 610, 616, 622, 636, 637, 639, 641, 646, 665, 691, 694, 695, 696, 714, 729, 735, 740, 748, 771, 775, 776, 787, 790, 791, 795, 814, 815, 837, 844, 849, 858, 859, 863, 864, 867, 876, 882, 892, 895, 896, 909, 925, 927, 953, 955, 966, 971, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 12, 22, 26, 31, 33, 50, 59, 60, 72, 74, 75, 94, 95, 124, 128, 137, 140, 141, 142, 168, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 269, 274, 277, 282, 285, 286, 300, 318, 328, 329, 345, 356, 364, 378, 386, 392, 405, 411, 415, 420, 422, 425, 443, 478, 495, 502, 509, 511, 515, 538, 546, 558, 564, 566, 572, 596, 598, 601, 610, 616, 622, 636, 637, 639, 641, 646, 665, 691, 694, 695, 696, 714, 729, 735, 740, 748, 771, 775, 776, 787, 790, 791, 795, 814, 815, 837, 844, 849, 858, 859, 863, 864, 867, 876, 882, 892, 895, 896, 909, 925, 927, 953, 955, 966, 971, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 12, 22, 26, 31, 33, 50, 59, 60, 72, 74, 75, 94, 95, 124, 128, 137, 140, 141, 142, 168, 175, 192, 195, 202, 206, 207, 208, 221, 231, 248, 266, 269, 274, 277, 282, 285, 286, 300, 318, 328, 329, 345, 356, 364, 378, 386, 392, 405, 411, 415, 420, 422, 425, 443, 478, 495, 502, 509, 511, 515, 538, 546, 558, 564, 566, 572, 596, 598, 601, 610, 616, 622, 636, 637, 639, 641, 646, 665, 691, 694, 695, 696, 714, 729, 735, 740, 748, 771, 775, 776, 787, 790, 791, 795, 814, 815, 837, 844, 849, 858, 859, 863, 864, 867, 876, 882, 892, 895, 896, 909, 925, 927, 953, 955, 966, 971, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 12, 18, 19, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 165, 213, 215, 220, 237, 246, 279, 297, 300, 319, 330, 334, 362, 418, 435, 449, 454, 459, 461, 478, 492, 504, 505, 531, 540, 546, 565, 578, 585, 592, 600, 605, 608, 652, 657, 709, 721, 724, 734, 741, 752, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899, 928}
[INFO] [stdout] b items: {27, 141, 247, 265, 319, 351, 353, 370, 416, 475, 485, 516, 556, 606, 728, 757, 914, 953}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 929), fp: EncodedCountingMonoid(67, SumMonoid(30628)) }], item_sets: [ItemSet { range: Range(929, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 475), fp: EncodedCountingMonoid(9, SumMonoid(2489)) }, Fingerprint { range: Range(475, 929), fp: EncodedCountingMonoid(8, SumMonoid(5037)) }], item_sets: [ItemSet { range: Range(929, 7), items: [953], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 220), fp: EncodedCountingMonoid(17, SumMonoid(1479)) }, Fingerprint { range: Range(220, 475), fp: EncodedCountingMonoid(16, SumMonoid(5600)) }, Fingerprint { range: Range(475, 721), fp: EncodedCountingMonoid(17, SumMonoid(9747)) }, Fingerprint { range: Range(721, 929), fp: EncodedCountingMonoid(17, SumMonoid(13802)) }], item_sets: [], wants: [953], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(220, 353), fp: EncodedCountingMonoid(4, SumMonoid(1182)) }, Fingerprint { range: Range(353, 475), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(475, 556), fp: EncodedCountingMonoid(3, SumMonoid(1476)) }], item_sets: [ItemSet { range: Range(7, 220), items: [27, 141], want_response: true }, ItemSet { range: Range(556, 721), items: [556, 606], want_response: true }, ItemSet { range: Range(721, 914), items: [728, 757], want_response: true }, ItemSet { range: Range(914, 929), items: [914], want_response: true }], wants: [], provide: [(953, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1279)) }, Fingerprint { range: Range(300, 353), fp: EncodedCountingMonoid(4, SumMonoid(1283)) }, Fingerprint { range: Range(353, 454), fp: EncodedCountingMonoid(4, SumMonoid(1664)) }, Fingerprint { range: Range(454, 475), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(475, 531), fp: EncodedCountingMonoid(4, SumMonoid(1979)) }, Fingerprint { range: Range(531, 556), fp: EncodedCountingMonoid(3, SumMonoid(1617)) }], item_sets: [ItemSet { range: Range(7, 220), items: [7, 12, 18, 19, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 165, 213, 215], want_response: false }, ItemSet { range: Range(556, 721), items: [565, 578, 585, 592, 600, 605, 608, 652, 657, 709], want_response: false }, ItemSet { range: Range(721, 914), items: [721, 724, 734, 741, 752, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899], want_response: false }, ItemSet { range: Range(914, 929), items: [928], want_response: false }], wants: [27, 141, 556, 606, 728, 757, 914], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(220, 300), items: [247, 265], want_response: true }, ItemSet { range: Range(300, 353), items: [319, 351], want_response: true }, ItemSet { range: Range(353, 416), items: [353, 370], want_response: true }, ItemSet { range: Range(416, 454), items: [416], want_response: true }, ItemSet { range: Range(454, 475), items: [], want_response: true }, ItemSet { range: Range(475, 516), items: [475, 485], want_response: true }, ItemSet { range: Range(516, 531), items: [516], want_response: true }, ItemSet { range: Range(531, 556), items: [], want_response: true }], wants: [7, 12, 18, 19, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 165, 213, 215, 565, 578, 585, 592, 600, 605, 608, 652, 657, 709, 721, 724, 734, 741, 752, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899, 928], provide: [(27, true), (141, true), (556, true), (606, true), (728, true), (757, true), (914, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(220, 300), items: [220, 237, 246, 279, 297], want_response: false }, ItemSet { range: Range(300, 353), items: [300, 319, 330, 334], want_response: false }, ItemSet { range: Range(353, 416), items: [362], want_response: false }, ItemSet { range: Range(416, 454), items: [418, 435, 449], want_response: false }, ItemSet { range: Range(454, 475), items: [454, 459, 461], want_response: false }, ItemSet { range: Range(475, 516), items: [478, 492, 504, 505], want_response: false }, ItemSet { range: Range(516, 531), items: [], want_response: false }, ItemSet { range: Range(531, 556), items: [531, 540, 546], want_response: false }], wants: [247, 265, 351, 353, 370, 416, 475, 485, 516], provide: [(7, true), (12, true), (18, true), (19, true), (39, true), (50, true), (58, true), (70, true), (91, true), (95, true), (96, true), (97, true), (107, true), (127, true), (165, true), (213, true), (215, true), (565, true), (578, true), (585, true), (592, true), (600, true), (605, true), (608, true), (652, true), (657, true), (709, true), (721, true), (724, true), (734, true), (741, true), (752, true), (774, true), (781, true), (828, true), (834, true), (836, true), (839, true), (848, true), (849, true), (851, true), (863, true), (899, true), (928, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [220, 237, 246, 279, 297, 300, 330, 334, 362, 418, 435, 449, 454, 459, 461, 478, 492, 504, 505, 531, 540, 546], provide: [(247, true), (265, true), (351, true), (353, true), (370, true), (416, true), (475, true), (485, true), (516, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(220, true), (237, true), (246, true), (279, true), (297, true), (300, true), (330, true), (334, true), (362, true), (418, true), (435, true), (449, true), (454, true), (459, true), (461, true), (478, true), (492, true), (504, true), (505, true), (531, true), (540, true), (546, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 12, 18, 19, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 165, 213, 215, 220, 237, 246, 279, 297, 300, 319, 330, 334, 362, 418, 435, 449, 454, 459, 461, 478, 492, 504, 505, 531, 540, 546, 565, 578, 585, 592, 600, 605, 608, 652, 657, 709, 721, 724, 734, 741, 752, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899, 928} + [953, 27, 141, 556, 606, 728, 757, 914, 247, 265, 351, 353, 370, 416, 475, 485, 516]
[INFO] [stdout] b all: {27, 141, 247, 265, 319, 351, 353, 370, 416, 475, 485, 516, 556, 606, 728, 757, 914, 953} + [7, 12, 18, 19, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 165, 213, 215, 565, 578, 585, 592, 600, 605, 608, 652, 657, 709, 721, 724, 734, 741, 752, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899, 928, 220, 237, 246, 279, 297, 300, 330, 334, 362, 418, 435, 449, 454, 459, 461, 478, 492, 504, 505, 531, 540, 546]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 12, 18, 19, 27, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 141, 165, 213, 215, 220, 237, 246, 247, 265, 279, 297, 300, 319, 330, 334, 351, 353, 362, 370, 416, 418, 435, 449, 454, 459, 461, 475, 478, 485, 492, 504, 505, 516, 531, 540, 546, 556, 565, 578, 585, 592, 600, 605, 606, 608, 652, 657, 709, 721, 724, 728, 734, 741, 752, 757, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899, 914, 928, 953]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 12, 18, 19, 27, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 141, 165, 213, 215, 220, 237, 246, 247, 265, 279, 297, 300, 319, 330, 334, 351, 353, 362, 370, 416, 418, 435, 449, 454, 459, 461, 475, 478, 485, 492, 504, 505, 516, 531, 540, 546, 556, 565, 578, 585, 592, 600, 605, 606, 608, 652, 657, 709, 721, 724, 728, 734, 741, 752, 757, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899, 914, 928, 953], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 12, 18, 19, 27, 39, 50, 58, 70, 91, 95, 96, 97, 107, 127, 141, 165, 213, 215, 220, 237, 246, 247, 265, 279, 297, 300, 319, 330, 334, 351, 353, 362, 370, 416, 418, 435, 449, 454, 459, 461, 475, 478, 485, 492, 504, 505, 516, 531, 540, 546, 556, 565, 578, 585, 592, 600, 605, 606, 608, 652, 657, 709, 721, 724, 728, 734, 741, 752, 757, 774, 781, 828, 834, 836, 839, 848, 849, 851, 863, 899, 914, 928, 953], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {48, 70, 76, 99, 101, 127, 162, 168, 176, 179, 190, 210, 226, 238, 243, 289, 308, 326, 328, 333, 337, 338, 339, 343, 354, 360, 361, 384, 416, 418, 426, 433, 437, 454, 473, 476, 516, 517, 523, 530, 535, 546, 547, 555, 561, 570, 574, 591, 597, 634, 639, 644, 648, 668, 676, 681, 695, 714, 737, 742, 748, 766, 785, 789, 803, 814, 819, 820, 852, 861, 912, 928, 929, 936, 968, 996, 999}
[INFO] [stdout] b items: {43, 50, 86, 127, 145, 158, 188, 298, 320, 343, 358, 366, 396, 398, 427, 439, 451, 482, 489, 513, 547, 550, 626, 676, 695, 703, 717, 794, 812, 842, 872, 875, 885, 949, 964, 974, 978}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(48, 1000), fp: EncodedCountingMonoid(77, SumMonoid(39611)) }], item_sets: [ItemSet { range: Range(1000, 48), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(48, 513), fp: EncodedCountingMonoid(18, SumMonoid(5521)) }, Fingerprint { range: Range(513, 1000), fp: EncodedCountingMonoid(18, SumMonoid(13972)) }], item_sets: [ItemSet { range: Range(1000, 48), items: [43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(48, 328), fp: EncodedCountingMonoid(18, SumMonoid(3236)) }, Fingerprint { range: Range(328, 513), fp: EncodedCountingMonoid(18, SumMonoid(7010)) }, Fingerprint { range: Range(513, 714), fp: EncodedCountingMonoid(21, SumMonoid(12447)) }, Fingerprint { range: Range(714, 1000), fp: EncodedCountingMonoid(20, SumMonoid(16918)) }], item_sets: [], wants: [43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(48, 158), fp: EncodedCountingMonoid(4, SumMonoid(408)) }, Fingerprint { range: Range(158, 328), fp: EncodedCountingMonoid(4, SumMonoid(964)) }, Fingerprint { range: Range(328, 427), fp: EncodedCountingMonoid(5, SumMonoid(1861)) }, Fingerprint { range: Range(427, 513), fp: EncodedCountingMonoid(5, SumMonoid(2288)) }, Fingerprint { range: Range(513, 676), fp: EncodedCountingMonoid(4, SumMonoid(2236)) }, Fingerprint { range: Range(676, 714), fp: EncodedCountingMonoid(3, SumMonoid(2074)) }, Fingerprint { range: Range(714, 885), fp: EncodedCountingMonoid(6, SumMonoid(4912)) }, Fingerprint { range: Range(885, 1000), fp: EncodedCountingMonoid(5, SumMonoid(4750)) }], item_sets: [], wants: [], provide: [(43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(48, 99), fp: EncodedCountingMonoid(3, SumMonoid(194)) }, Fingerprint { range: Range(99, 158), fp: EncodedCountingMonoid(3, SumMonoid(327)) }, Fingerprint { range: Range(158, 226), fp: EncodedCountingMonoid(6, SumMonoid(1085)) }, Fingerprint { range: Range(226, 328), fp: EncodedCountingMonoid(6, SumMonoid(1630)) }, Fingerprint { range: Range(328, 360), fp: EncodedCountingMonoid(7, SumMonoid(2372)) }, Fingerprint { range: Range(360, 427), fp: EncodedCountingMonoid(6, SumMonoid(2365)) }, Fingerprint { range: Range(427, 473), fp: EncodedCountingMonoid(3, SumMonoid(1324)) }, Fingerprint { range: Range(513, 570), fp: EncodedCountingMonoid(9, SumMonoid(4830)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(9, SumMonoid(5565)) }, Fingerprint { range: Range(714, 803), fp: EncodedCountingMonoid(7, SumMonoid(5281)) }, Fingerprint { range: Range(803, 885), fp: EncodedCountingMonoid(6, SumMonoid(4969)) }, Fingerprint { range: Range(885, 968), fp: EncodedCountingMonoid(4, SumMonoid(3705)) }, Fingerprint { range: Range(968, 1000), fp: EncodedCountingMonoid(3, SumMonoid(2963)) }], item_sets: [ItemSet { range: Range(473, 513), items: [473, 476], want_response: true }, ItemSet { range: Range(676, 695), items: [676, 681], want_response: true }, ItemSet { range: Range(695, 714), items: [695], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(473, 513), items: [482, 489], want_response: false }, ItemSet { range: Range(676, 695), items: [676], want_response: false }, ItemSet { range: Range(695, 714), items: [695, 703], want_response: false }, ItemSet { range: Range(48, 99), items: [50, 86], want_response: true }, ItemSet { range: Range(99, 158), items: [127, 145], want_response: true }, ItemSet { range: Range(158, 226), items: [158, 188], want_response: true }, ItemSet { range: Range(226, 328), items: [298, 320], want_response: true }, ItemSet { range: Range(328, 360), items: [343, 358], want_response: true }, ItemSet { range: Range(360, 398), items: [366, 396], want_response: true }, ItemSet { range: Range(398, 427), items: [398], want_response: true }, ItemSet { range: Range(427, 451), items: [427, 439], want_response: true }, ItemSet { range: Range(451, 473), items: [451], want_response: true }, ItemSet { range: Range(513, 550), items: [513, 547], want_response: true }, ItemSet { range: Range(550, 570), items: [550], want_response: true }, ItemSet { range: Range(570, 676), items: [626], want_response: true }, ItemSet { range: Range(714, 803), items: [717, 794], want_response: true }, ItemSet { range: Range(803, 872), items: [812, 842], want_response: true }, ItemSet { range: Range(872, 885), items: [872, 875], want_response: true }, ItemSet { range: Range(885, 964), items: [885, 949], want_response: true }, ItemSet { range: Range(964, 968), items: [964], want_response: true }, ItemSet { range: Range(968, 1000), items: [974, 978], want_response: true }], wants: [473, 476, 681], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(48, 99), items: [48, 70, 76], want_response: false }, ItemSet { range: Range(99, 158), items: [99, 101, 127], want_response: false }, ItemSet { range: Range(158, 226), items: [162, 168, 176, 179, 190, 210], want_response: false }, ItemSet { range: Range(226, 328), items: [226, 238, 243, 289, 308, 326], want_response: false }, ItemSet { range: Range(328, 360), items: [328, 333, 337, 338, 339, 343, 354], want_response: false }, ItemSet { range: Range(360, 398), items: [360, 361, 384], want_response: false }, ItemSet { range: Range(398, 427), items: [416, 418, 426], want_response: false }, ItemSet { range: Range(427, 451), items: [433, 437], want_response: false }, ItemSet { range: Range(451, 473), items: [454], want_response: false }, ItemSet { range: Range(513, 550), items: [516, 517, 523, 530, 535, 546, 547], want_response: false }, ItemSet { range: Range(550, 570), items: [555, 561], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 574, 591, 597, 634, 639, 644, 648, 668], want_response: false }, ItemSet { range: Range(714, 803), items: [714, 737, 742, 748, 766, 785, 789], want_response: false }, ItemSet { range: Range(803, 872), items: [803, 814, 819, 820, 852, 861], want_response: false }, ItemSet { range: Range(872, 885), items: [], want_response: false }, ItemSet { range: Range(885, 964), items: [912, 928, 929, 936], want_response: false }, ItemSet { range: Range(964, 968), items: [], want_response: false }, ItemSet { range: Range(968, 1000), items: [968, 996, 999], want_response: false }], wants: [482, 489, 703, 50, 86, 145, 158, 188, 298, 320, 358, 366, 396, 398, 427, 439, 451, 513, 550, 626, 717, 794, 812, 842, 872, 875, 885, 949, 964, 974, 978], provide: [(473, true), (476, true), (681, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [48, 70, 76, 99, 101, 162, 168, 176, 179, 190, 210, 226, 238, 243, 289, 308, 326, 328, 333, 337, 338, 339, 354, 360, 361, 384, 416, 418, 426, 433, 437, 454, 516, 517, 523, 530, 535, 546, 555, 561, 570, 574, 591, 597, 634, 639, 644, 648, 668, 714, 737, 742, 748, 766, 785, 789, 803, 814, 819, 820, 852, 861, 912, 928, 929, 936, 968, 996, 999], provide: [(482, true), (489, true), (703, true), (50, true), (86, true), (145, true), (158, true), (188, true), (298, true), (320, true), (358, true), (366, true), (396, true), (398, true), (427, true), (439, true), (451, true), (513, true), (550, true), (626, true), (717, true), (794, true), (812, true), (842, true), (872, true), (875, true), (885, true), (949, true), (964, true), (974, true), (978, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(48, true), (70, true), (76, true), (99, true), (101, true), (162, true), (168, true), (176, true), (179, true), (190, true), (210, true), (226, true), (238, true), (243, true), (289, true), (308, true), (326, true), (328, true), (333, true), (337, true), (338, true), (339, true), (354, true), (360, true), (361, true), (384, true), (416, true), (418, true), (426, true), (433, true), (437, true), (454, true), (516, true), (517, true), (523, true), (530, true), (535, true), (546, true), (555, true), (561, true), (570, true), (574, true), (591, true), (597, true), (634, true), (639, true), (644, true), (648, true), (668, true), (714, true), (737, true), (742, true), (748, true), (766, true), (785, true), (789, true), (803, true), (814, true), (819, true), (820, true), (852, true), (861, true), (912, true), (928, true), (929, true), (936, true), (968, true), (996, true), (999, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {48, 70, 76, 99, 101, 127, 162, 168, 176, 179, 190, 210, 226, 238, 243, 289, 308, 326, 328, 333, 337, 338, 339, 343, 354, 360, 361, 384, 416, 418, 426, 433, 437, 454, 473, 476, 516, 517, 523, 530, 535, 546, 547, 555, 561, 570, 574, 591, 597, 634, 639, 644, 648, 668, 676, 681, 695, 714, 737, 742, 748, 766, 785, 789, 803, 814, 819, 820, 852, 861, 912, 928, 929, 936, 968, 996, 999} + [43, 482, 489, 703, 50, 86, 145, 158, 188, 298, 320, 358, 366, 396, 398, 427, 439, 451, 513, 550, 626, 717, 794, 812, 842, 872, 875, 885, 949, 964, 974, 978]
[INFO] [stdout] b all: {43, 50, 86, 127, 145, 158, 188, 298, 320, 343, 358, 366, 396, 398, 427, 439, 451, 482, 489, 513, 547, 550, 626, 676, 695, 703, 717, 794, 812, 842, 872, 875, 885, 949, 964, 974, 978} + [473, 476, 681, 48, 70, 76, 99, 101, 162, 168, 176, 179, 190, 210, 226, 238, 243, 289, 308, 326, 328, 333, 337, 338, 339, 354, 360, 361, 384, 416, 418, 426, 433, 437, 454, 516, 517, 523, 530, 535, 546, 555, 561, 570, 574, 591, 597, 634, 639, 644, 648, 668, 714, 737, 742, 748, 766, 785, 789, 803, 814, 819, 820, 852, 861, 912, 928, 929, 936, 968, 996, 999]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [43, 48, 50, 70, 76, 86, 99, 101, 127, 145, 158, 162, 168, 176, 179, 188, 190, 210, 226, 238, 243, 289, 298, 308, 320, 326, 328, 333, 337, 338, 339, 343, 354, 358, 360, 361, 366, 384, 396, 398, 416, 418, 426, 427, 433, 437, 439, 451, 454, 473, 476, 482, 489, 513, 516, 517, 523, 530, 535, 546, 547, 550, 555, 561, 570, 574, 591, 597, 626, 634, 639, 644, 648, 668, 676, 681, 695, 703, 714, 717, 737, 742, 748, 766, 785, 789, 794, 803, 812, 814, 819, 820, 842, 852, 861, 872, 875, 885, 912, 928, 929, 936, 949, 964, 968, 974, 978, 996, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [43, 48, 50, 70, 76, 86, 99, 101, 127, 145, 158, 162, 168, 176, 179, 188, 190, 210, 226, 238, 243, 289, 298, 308, 320, 326, 328, 333, 337, 338, 339, 343, 354, 358, 360, 361, 366, 384, 396, 398, 416, 418, 426, 427, 433, 437, 439, 451, 454, 473, 476, 482, 489, 513, 516, 517, 523, 530, 535, 546, 547, 550, 555, 561, 570, 574, 591, 597, 626, 634, 639, 644, 648, 668, 676, 681, 695, 703, 714, 717, 737, 742, 748, 766, 785, 789, 794, 803, 812, 814, 819, 820, 842, 852, 861, 872, 875, 885, 912, 928, 929, 936, 949, 964, 968, 974, 978, 996, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [43, 48, 50, 70, 76, 86, 99, 101, 127, 145, 158, 162, 168, 176, 179, 188, 190, 210, 226, 238, 243, 289, 298, 308, 320, 326, 328, 333, 337, 338, 339, 343, 354, 358, 360, 361, 366, 384, 396, 398, 416, 418, 426, 427, 433, 437, 439, 451, 454, 473, 476, 482, 489, 513, 516, 517, 523, 530, 535, 546, 547, 550, 555, 561, 570, 574, 591, 597, 626, 634, 639, 644, 648, 668, 676, 681, 695, 703, 714, 717, 737, 742, 748, 766, 785, 789, 794, 803, 812, 814, 819, 820, 842, 852, 861, 872, 875, 885, 912, 928, 929, 936, 949, 964, 968, 974, 978, 996, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {8, 38, 117, 129, 175, 176, 185, 333, 336, 400, 454, 461, 467, 516, 566, 598, 690, 736, 765, 817, 832, 868, 889, 914, 978}
[INFO] [stdout] b items: {21, 28, 63, 103, 119, 233, 291, 296, 349, 521, 570, 629, 656, 669, 691, 733, 831, 840, 875, 920, 928, 931, 945, 952, 960}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 979), fp: EncodedCountingMonoid(25, SumMonoid(12448)) }], item_sets: [ItemSet { range: Range(979, 8), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 669), fp: EncodedCountingMonoid(13, SumMonoid(3879)) }, Fingerprint { range: Range(669, 979), fp: EncodedCountingMonoid(12, SumMonoid(10275)) }], item_sets: [ItemSet { range: Range(979, 8), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(8, 336), fp: EncodedCountingMonoid(8, SumMonoid(1161)) }, Fingerprint { range: Range(336, 669), fp: EncodedCountingMonoid(8, SumMonoid(3798)) }, Fingerprint { range: Range(669, 868), fp: EncodedCountingMonoid(5, SumMonoid(3840)) }, Fingerprint { range: Range(868, 979), fp: EncodedCountingMonoid(4, SumMonoid(3649)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(8, 119), fp: EncodedCountingMonoid(4, SumMonoid(215)) }, Fingerprint { range: Range(119, 336), fp: EncodedCountingMonoid(4, SumMonoid(939)) }, Fingerprint { range: Range(336, 629), fp: EncodedCountingMonoid(3, SumMonoid(1440)) }, Fingerprint { range: Range(669, 831), fp: EncodedCountingMonoid(3, SumMonoid(2093)) }, Fingerprint { range: Range(868, 945), fp: EncodedCountingMonoid(4, SumMonoid(3654)) }, Fingerprint { range: Range(945, 979), fp: EncodedCountingMonoid(3, SumMonoid(2857)) }], item_sets: [ItemSet { range: Range(629, 669), items: [629, 656], want_response: true }, ItemSet { range: Range(831, 868), items: [831, 840], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(119, 185), fp: EncodedCountingMonoid(3, SumMonoid(480)) }, Fingerprint { range: Range(336, 467), fp: EncodedCountingMonoid(4, SumMonoid(1651)) }, Fingerprint { range: Range(467, 629), fp: EncodedCountingMonoid(4, SumMonoid(2147)) }], item_sets: [ItemSet { range: Range(629, 669), items: [], want_response: false }, ItemSet { range: Range(831, 868), items: [832], want_response: false }, ItemSet { range: Range(8, 117), items: [8, 38], want_response: true }, ItemSet { range: Range(117, 119), items: [117], want_response: true }, ItemSet { range: Range(185, 336), items: [185, 333], want_response: true }, ItemSet { range: Range(669, 765), items: [690, 736], want_response: true }, ItemSet { range: Range(765, 831), items: [765, 817], want_response: true }, ItemSet { range: Range(868, 914), items: [868, 889], want_response: true }, ItemSet { range: Range(914, 945), items: [914], want_response: true }, ItemSet { range: Range(945, 979), items: [978], want_response: true }], wants: [629, 656, 831, 840], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(8, 117), items: [21, 28, 63, 103], want_response: false }, ItemSet { range: Range(117, 119), items: [], want_response: false }, ItemSet { range: Range(185, 336), items: [233, 291, 296], want_response: false }, ItemSet { range: Range(669, 765), items: [669, 691, 733], want_response: false }, ItemSet { range: Range(765, 831), items: [], want_response: false }, ItemSet { range: Range(868, 914), items: [875], want_response: false }, ItemSet { range: Range(914, 945), items: [920, 928, 931], want_response: false }, ItemSet { range: Range(945, 979), items: [945, 952, 960], want_response: false }, ItemSet { range: Range(119, 185), items: [119], want_response: true }, ItemSet { range: Range(336, 467), items: [349], want_response: true }, ItemSet { range: Range(467, 629), items: [521, 570], want_response: true }], wants: [832, 8, 38, 117, 185, 333, 690, 736, 765, 817, 868, 889, 914, 978], provide: [(629, true), (656, true), (831, true), (840, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(119, 185), items: [129, 175, 176], want_response: false }, ItemSet { range: Range(336, 467), items: [336, 400, 454, 461], want_response: false }, ItemSet { range: Range(467, 629), items: [467, 516, 566, 598], want_response: false }], wants: [21, 28, 63, 103, 233, 291, 296, 669, 691, 733, 875, 920, 928, 931, 945, 952, 960, 119, 349, 521, 570], provide: [(832, true), (8, true), (38, true), (117, true), (185, true), (333, true), (690, true), (736, true), (765, true), (817, true), (868, true), (889, true), (914, true), (978, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [129, 175, 176, 336, 400, 454, 461, 467, 516, 566, 598], provide: [(21, true), (28, true), (63, true), (103, true), (233, true), (291, true), (296, true), (669, true), (691, true), (733, true), (875, true), (920, true), (928, true), (931, true), (945, true), (952, true), (960, true), (119, true), (349, true), (521, true), (570, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(129, true), (175, true), (176, true), (336, true), (400, true), (454, true), (461, true), (467, true), (516, true), (566, true), (598, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {8, 38, 117, 129, 175, 176, 185, 333, 336, 400, 454, 461, 467, 516, 566, 598, 690, 736, 765, 817, 832, 868, 889, 914, 978} + [629, 656, 831, 840, 21, 28, 63, 103, 233, 291, 296, 669, 691, 733, 875, 920, 928, 931, 945, 952, 960, 119, 349, 521, 570]
[INFO] [stdout] b all: {21, 28, 63, 103, 119, 233, 291, 296, 349, 521, 570, 629, 656, 669, 691, 733, 831, 840, 875, 920, 928, 931, 945, 952, 960} + [832, 8, 38, 117, 185, 333, 690, 736, 765, 817, 868, 889, 914, 978, 129, 175, 176, 336, 400, 454, 461, 467, 516, 566, 598]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 21, 28, 38, 63, 103, 117, 119, 129, 175, 176, 185, 233, 291, 296, 333, 336, 349, 400, 454, 461, 467, 516, 521, 566, 570, 598, 629, 656, 669, 690, 691, 733, 736, 765, 817, 831, 832, 840, 868, 875, 889, 914, 920, 928, 931, 945, 952, 960, 978]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 21, 28, 38, 63, 103, 117, 119, 129, 175, 176, 185, 233, 291, 296, 333, 336, 349, 400, 454, 461, 467, 516, 521, 566, 570, 598, 629, 656, 669, 690, 691, 733, 736, 765, 817, 831, 832, 840, 868, 875, 889, 914, 920, 928, 931, 945, 952, 960, 978], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 21, 28, 38, 63, 103, 117, 119, 129, 175, 176, 185, 233, 291, 296, 333, 336, 349, 400, 454, 461, 467, 516, 521, 566, 570, 598, 629, 656, 669, 690, 691, 733, 736, 765, 817, 831, 832, 840, 868, 875, 889, 914, 920, 928, 931, 945, 952, 960, 978], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 10, 25, 43, 95, 99, 107, 278, 296, 315, 337, 350, 355, 379, 403, 438, 456, 457, 475, 517, 518, 542, 550, 579, 582, 591, 608, 647, 728, 776, 800, 838, 853, 871, 917, 920, 937, 938, 942, 961, 965}
[INFO] [stdout] b items: {7, 39, 68, 96, 105, 121, 126, 133, 136, 162, 167, 179, 187, 190, 195, 208, 211, 212, 232, 273, 287, 301, 312, 324, 332, 343, 351, 355, 360, 381, 401, 413, 430, 434, 437, 443, 447, 448, 483, 485, 495, 516, 524, 526, 535, 561, 573, 583, 599, 603, 606, 621, 630, 631, 637, 645, 662, 664, 680, 728, 732, 733, 752, 781, 787, 793, 815, 819, 828, 840, 881, 884, 888, 896, 906, 929, 936, 942, 979, 998}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 966), fp: EncodedCountingMonoid(41, SumMonoid(21505)) }], item_sets: [ItemSet { range: Range(966, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 485), fp: EncodedCountingMonoid(39, SumMonoid(10329)) }, Fingerprint { range: Range(485, 966), fp: EncodedCountingMonoid(39, SumMonoid(27646)) }], item_sets: [ItemSet { range: Range(966, 7), items: [979, 998], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 337), fp: EncodedCountingMonoid(10, SumMonoid(1275)) }, Fingerprint { range: Range(337, 485), fp: EncodedCountingMonoid(9, SumMonoid(3650)) }, Fingerprint { range: Range(485, 800), fp: EncodedCountingMonoid(11, SumMonoid(6638)) }, Fingerprint { range: Range(800, 966), fp: EncodedCountingMonoid(11, SumMonoid(9942)) }], item_sets: [], wants: [979, 998], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 190), fp: EncodedCountingMonoid(13, SumMonoid(1526)) }, Fingerprint { range: Range(190, 337), fp: EncodedCountingMonoid(12, SumMonoid(3077)) }, Fingerprint { range: Range(337, 430), fp: EncodedCountingMonoid(7, SumMonoid(2604)) }, Fingerprint { range: Range(430, 485), fp: EncodedCountingMonoid(7, SumMonoid(3122)) }, Fingerprint { range: Range(485, 631), fp: EncodedCountingMonoid(14, SumMonoid(7857)) }, Fingerprint { range: Range(631, 800), fp: EncodedCountingMonoid(13, SumMonoid(9225)) }, Fingerprint { range: Range(800, 888), fp: EncodedCountingMonoid(6, SumMonoid(5067)) }, Fingerprint { range: Range(888, 966), fp: EncodedCountingMonoid(6, SumMonoid(5497)) }], item_sets: [], wants: [], provide: [(979, true), (998, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 95), fp: EncodedCountingMonoid(4, SumMonoid(85)) }, Fingerprint { range: Range(95, 190), fp: EncodedCountingMonoid(3, SumMonoid(301)) }, Fingerprint { range: Range(337, 379), fp: EncodedCountingMonoid(3, SumMonoid(1042)) }, Fingerprint { range: Range(485, 579), fp: EncodedCountingMonoid(4, SumMonoid(2127)) }, Fingerprint { range: Range(579, 631), fp: EncodedCountingMonoid(4, SumMonoid(2360)) }, Fingerprint { range: Range(888, 942), fp: EncodedCountingMonoid(4, SumMonoid(3712)) }, Fingerprint { range: Range(942, 966), fp: EncodedCountingMonoid(3, SumMonoid(2868)) }], item_sets: [ItemSet { range: Range(190, 315), items: [278, 296], want_response: true }, ItemSet { range: Range(315, 337), items: [315], want_response: true }, ItemSet { range: Range(379, 430), items: [379, 403], want_response: true }, ItemSet { range: Range(430, 457), items: [438, 456], want_response: true }, ItemSet { range: Range(457, 485), items: [457, 475], want_response: true }, ItemSet { range: Range(631, 776), items: [647, 728], want_response: true }, ItemSet { range: Range(776, 800), items: [776], want_response: true }, ItemSet { range: Range(800, 853), items: [800, 838], want_response: true }, ItemSet { range: Range(853, 888), items: [853, 871], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(95, 136), fp: EncodedCountingMonoid(5, SumMonoid(581)) }, Fingerprint { range: Range(136, 190), fp: EncodedCountingMonoid(5, SumMonoid(831)) }, Fingerprint { range: Range(485, 526), fp: EncodedCountingMonoid(4, SumMonoid(2020)) }, Fingerprint { range: Range(526, 579), fp: EncodedCountingMonoid(4, SumMonoid(2195)) }, Fingerprint { range: Range(579, 606), fp: EncodedCountingMonoid(3, SumMonoid(1785)) }, Fingerprint { range: Range(606, 631), fp: EncodedCountingMonoid(3, SumMonoid(1857)) }, Fingerprint { range: Range(888, 929), fp: EncodedCountingMonoid(3, SumMonoid(2690)) }], item_sets: [ItemSet { range: Range(190, 315), items: [190, 195, 208, 211, 212, 232, 273, 287, 301, 312], want_response: false }, ItemSet { range: Range(315, 337), items: [324, 332], want_response: false }, ItemSet { range: Range(379, 430), items: [381, 401, 413], want_response: false }, ItemSet { range: Range(430, 457), items: [430, 434, 437, 443, 447, 448], want_response: false }, ItemSet { range: Range(457, 485), items: [483], want_response: false }, ItemSet { range: Range(631, 776), items: [631, 637, 645, 662, 664, 680, 728, 732, 733, 752], want_response: false }, ItemSet { range: Range(776, 800), items: [781, 787, 793], want_response: false }, ItemSet { range: Range(800, 853), items: [815, 819, 828, 840], want_response: false }, ItemSet { range: Range(853, 888), items: [881, 884], want_response: false }, ItemSet { range: Range(7, 68), items: [7, 39], want_response: true }, ItemSet { range: Range(68, 95), items: [68], want_response: true }, ItemSet { range: Range(337, 355), items: [343, 351], want_response: true }, ItemSet { range: Range(355, 379), items: [355, 360], want_response: true }, ItemSet { range: Range(929, 942), items: [929, 936], want_response: true }, ItemSet { range: Range(942, 966), items: [942], want_response: true }], wants: [278, 296, 315, 379, 403, 438, 456, 457, 475, 647, 776, 800, 838, 853, 871], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 68), items: [7, 10, 25, 43], want_response: false }, ItemSet { range: Range(68, 95), items: [], want_response: false }, ItemSet { range: Range(337, 355), items: [337, 350], want_response: false }, ItemSet { range: Range(355, 379), items: [355], want_response: false }, ItemSet { range: Range(929, 942), items: [937, 938], want_response: false }, ItemSet { range: Range(942, 966), items: [942, 961, 965], want_response: false }, ItemSet { range: Range(95, 107), items: [95, 99], want_response: true }, ItemSet { range: Range(107, 136), items: [107], want_response: true }, ItemSet { range: Range(136, 190), items: [], want_response: true }, ItemSet { range: Range(485, 526), items: [517, 518], want_response: true }, ItemSet { range: Range(526, 579), items: [542, 550], want_response: true }, ItemSet { range: Range(579, 591), items: [579, 582], want_response: true }, ItemSet { range: Range(591, 606), items: [591], want_response: true }, ItemSet { range: Range(606, 631), items: [608], want_response: true }, ItemSet { range: Range(888, 929), items: [917, 920], want_response: true }], wants: [190, 195, 208, 211, 212, 232, 273, 287, 301, 312, 324, 332, 381, 401, 413, 430, 434, 437, 443, 447, 448, 483, 631, 637, 645, 662, 664, 680, 732, 733, 752, 781, 787, 793, 815, 819, 828, 840, 881, 884, 39, 68, 343, 351, 360, 929, 936], provide: [(278, true), (296, true), (315, true), (379, true), (403, true), (438, true), (456, true), (457, true), (475, true), (647, true), (776, true), (800, true), (838, true), (853, true), (871, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(95, 107), items: [96, 105], want_response: false }, ItemSet { range: Range(107, 136), items: [121, 126, 133], want_response: false }, ItemSet { range: Range(136, 190), items: [136, 162, 167, 179, 187], want_response: false }, ItemSet { range: Range(485, 526), items: [485, 495, 516, 524], want_response: false }, ItemSet { range: Range(526, 579), items: [526, 535, 561, 573], want_response: false }, ItemSet { range: Range(579, 591), items: [583], want_response: false }, ItemSet { range: Range(591, 606), items: [599, 603], want_response: false }, ItemSet { range: Range(606, 631), items: [606, 621, 630], want_response: false }, ItemSet { range: Range(888, 929), items: [888, 896, 906], want_response: false }], wants: [10, 25, 43, 337, 350, 937, 938, 961, 965, 95, 99, 107, 517, 518, 542, 550, 579, 582, 591, 608, 917, 920], provide: [(190, true), (195, true), (208, true), (211, true), (212, true), (232, true), (273, true), (287, true), (301, true), (312, true), (324, true), (332, true), (381, true), (401, true), (413, true), (430, true), (434, true), (437, true), (443, true), (447, true), (448, true), (483, true), (631, true), (637, true), (645, true), (662, true), (664, true), (680, true), (732, true), (733, true), (752, true), (781, true), (787, true), (793, true), (815, true), (819, true), (828, true), (840, true), (881, true), (884, true), (39, true), (68, true), (343, true), (351, true), (360, true), (929, true), (936, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [96, 105, 121, 126, 133, 136, 162, 167, 179, 187, 485, 495, 516, 524, 526, 535, 561, 573, 583, 599, 603, 606, 621, 630, 888, 896, 906], provide: [(10, true), (25, true), (43, true), (337, true), (350, true), (937, true), (938, true), (961, true), (965, true), (95, true), (99, true), (107, true), (517, true), (518, true), (542, true), (550, true), (579, true), (582, true), (591, true), (608, true), (917, true), (920, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(96, true), (105, true), (121, true), (126, true), (133, true), (136, true), (162, true), (167, true), (179, true), (187, true), (485, true), (495, true), (516, true), (524, true), (526, true), (535, true), (561, true), (573, true), (583, true), (599, true), (603, true), (606, true), (621, true), (630, true), (888, true), (896, true), (906, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 10, 25, 43, 95, 99, 107, 278, 296, 315, 337, 350, 355, 379, 403, 438, 456, 457, 475, 517, 518, 542, 550, 579, 582, 591, 608, 647, 728, 776, 800, 838, 853, 871, 917, 920, 937, 938, 942, 961, 965} + [979, 998, 190, 195, 208, 211, 212, 232, 273, 287, 301, 312, 324, 332, 381, 401, 413, 430, 434, 437, 443, 447, 448, 483, 631, 637, 645, 662, 664, 680, 732, 733, 752, 781, 787, 793, 815, 819, 828, 840, 881, 884, 39, 68, 343, 351, 360, 929, 936, 96, 105, 121, 126, 133, 136, 162, 167, 179, 187, 485, 495, 516, 524, 526, 535, 561, 573, 583, 599, 603, 606, 621, 630, 888, 896, 906]
[INFO] [stdout] b all: {7, 39, 68, 96, 105, 121, 126, 133, 136, 162, 167, 179, 187, 190, 195, 208, 211, 212, 232, 273, 287, 301, 312, 324, 332, 343, 351, 355, 360, 381, 401, 413, 430, 434, 437, 443, 447, 448, 483, 485, 495, 516, 524, 526, 535, 561, 573, 583, 599, 603, 606, 621, 630, 631, 637, 645, 662, 664, 680, 728, 732, 733, 752, 781, 787, 793, 815, 819, 828, 840, 881, 884, 888, 896, 906, 929, 936, 942, 979, 998} + [278, 296, 315, 379, 403, 438, 456, 457, 475, 647, 776, 800, 838, 853, 871, 10, 25, 43, 337, 350, 937, 938, 961, 965, 95, 99, 107, 517, 518, 542, 550, 579, 582, 591, 608, 917, 920]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 10, 25, 39, 43, 68, 95, 96, 99, 105, 107, 121, 126, 133, 136, 162, 167, 179, 187, 190, 195, 208, 211, 212, 232, 273, 278, 287, 296, 301, 312, 315, 324, 332, 337, 343, 350, 351, 355, 360, 379, 381, 401, 403, 413, 430, 434, 437, 438, 443, 447, 448, 456, 457, 475, 483, 485, 495, 516, 517, 518, 524, 526, 535, 542, 550, 561, 573, 579, 582, 583, 591, 599, 603, 606, 608, 621, 630, 631, 637, 645, 647, 662, 664, 680, 728, 732, 733, 752, 776, 781, 787, 793, 800, 815, 819, 828, 838, 840, 853, 871, 881, 884, 888, 896, 906, 917, 920, 929, 936, 937, 938, 942, 961, 965, 979, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 10, 25, 39, 43, 68, 95, 96, 99, 105, 107, 121, 126, 133, 136, 162, 167, 179, 187, 190, 195, 208, 211, 212, 232, 273, 278, 287, 296, 301, 312, 315, 324, 332, 337, 343, 350, 351, 355, 360, 379, 381, 401, 403, 413, 430, 434, 437, 438, 443, 447, 448, 456, 457, 475, 483, 485, 495, 516, 517, 518, 524, 526, 535, 542, 550, 561, 573, 579, 582, 583, 591, 599, 603, 606, 608, 621, 630, 631, 637, 645, 647, 662, 664, 680, 728, 732, 733, 752, 776, 781, 787, 793, 800, 815, 819, 828, 838, 840, 853, 871, 881, 884, 888, 896, 906, 917, 920, 929, 936, 937, 938, 942, 961, 965, 979, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 10, 25, 39, 43, 68, 95, 96, 99, 105, 107, 121, 126, 133, 136, 162, 167, 179, 187, 190, 195, 208, 211, 212, 232, 273, 278, 287, 296, 301, 312, 315, 324, 332, 337, 343, 350, 351, 355, 360, 379, 381, 401, 403, 413, 430, 434, 437, 438, 443, 447, 448, 456, 457, 475, 483, 485, 495, 516, 517, 518, 524, 526, 535, 542, 550, 561, 573, 579, 582, 583, 591, 599, 603, 606, 608, 621, 630, 631, 637, 645, 647, 662, 664, 680, 728, 732, 733, 752, 776, 781, 787, 793, 800, 815, 819, 828, 838, 840, 853, 871, 881, 884, 888, 896, 906, 917, 920, 929, 936, 937, 938, 942, 961, 965, 979, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {13, 27, 31, 36, 42, 55, 75, 86, 114, 118, 121, 134, 135, 158, 171, 179, 206, 228, 235, 242, 285, 297, 298, 303, 306, 312, 332, 343, 346, 353, 354, 355, 376, 414, 450, 456, 459, 495, 500, 528, 552, 600, 634, 654, 729, 735, 737, 751, 762, 782, 786, 788, 798, 809, 841, 845, 858, 879, 908, 916, 923, 925, 933, 941, 951, 955, 965, 980}
[INFO] [stdout] b items: {56, 63, 85, 109, 221, 252, 259, 300, 309, 350, 388, 443, 447, 515, 516, 534, 655, 669, 682, 690, 801, 823, 881, 894, 906, 959, 979}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 981), fp: EncodedCountingMonoid(68, SumMonoid(32905)) }], item_sets: [ItemSet { range: Range(981, 13), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 516), fp: EncodedCountingMonoid(14, SumMonoid(3797)) }, Fingerprint { range: Range(516, 981), fp: EncodedCountingMonoid(13, SumMonoid(9989)) }], item_sets: [ItemSet { range: Range(981, 13), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 285), fp: EncodedCountingMonoid(20, SumMonoid(2406)) }, Fingerprint { range: Range(285, 516), fp: EncodedCountingMonoid(19, SumMonoid(7034)) }, Fingerprint { range: Range(516, 841), fp: EncodedCountingMonoid(15, SumMonoid(10645)) }, Fingerprint { range: Range(841, 981), fp: EncodedCountingMonoid(14, SumMonoid(12820)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 221), fp: EncodedCountingMonoid(4, SumMonoid(313)) }, Fingerprint { range: Range(221, 285), fp: EncodedCountingMonoid(3, SumMonoid(732)) }, Fingerprint { range: Range(285, 443), fp: EncodedCountingMonoid(4, SumMonoid(1347)) }, Fingerprint { range: Range(443, 516), fp: EncodedCountingMonoid(3, SumMonoid(1405)) }, Fingerprint { range: Range(516, 682), fp: EncodedCountingMonoid(4, SumMonoid(2374)) }, Fingerprint { range: Range(682, 841), fp: EncodedCountingMonoid(4, SumMonoid(2996)) }, Fingerprint { range: Range(841, 959), fp: EncodedCountingMonoid(3, SumMonoid(2681)) }], item_sets: [ItemSet { range: Range(959, 981), items: [959, 979], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 118), fp: EncodedCountingMonoid(9, SumMonoid(479)) }, Fingerprint { range: Range(118, 221), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(285, 343), fp: EncodedCountingMonoid(7, SumMonoid(2133)) }, Fingerprint { range: Range(343, 443), fp: EncodedCountingMonoid(7, SumMonoid(2541)) }, Fingerprint { range: Range(443, 495), fp: EncodedCountingMonoid(3, SumMonoid(1365)) }, Fingerprint { range: Range(516, 634), fp: EncodedCountingMonoid(3, SumMonoid(1680)) }, Fingerprint { range: Range(682, 782), fp: EncodedCountingMonoid(5, SumMonoid(3714)) }, Fingerprint { range: Range(782, 841), fp: EncodedCountingMonoid(5, SumMonoid(3963)) }, Fingerprint { range: Range(841, 923), fp: EncodedCountingMonoid(6, SumMonoid(5247)) }, Fingerprint { range: Range(923, 959), fp: EncodedCountingMonoid(6, SumMonoid(5628)) }], item_sets: [ItemSet { range: Range(959, 981), items: [965, 980], want_response: false }, ItemSet { range: Range(221, 242), items: [228, 235], want_response: true }, ItemSet { range: Range(242, 285), items: [242], want_response: true }, ItemSet { range: Range(495, 516), items: [495, 500], want_response: true }, ItemSet { range: Range(634, 682), items: [634, 654], want_response: true }], wants: [959, 979], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(221, 242), items: [221], want_response: false }, ItemSet { range: Range(242, 285), items: [252, 259], want_response: false }, ItemSet { range: Range(495, 516), items: [515], want_response: false }, ItemSet { range: Range(634, 682), items: [655, 669], want_response: false }, ItemSet { range: Range(13, 85), items: [56, 63], want_response: true }, ItemSet { range: Range(85, 118), items: [85, 109], want_response: true }, ItemSet { range: Range(118, 221), items: [], want_response: true }, ItemSet { range: Range(285, 343), items: [300, 309], want_response: true }, ItemSet { range: Range(343, 443), items: [350, 388], want_response: true }, ItemSet { range: Range(443, 495), items: [443, 447], want_response: true }, ItemSet { range: Range(516, 634), items: [516, 534], want_response: true }, ItemSet { range: Range(682, 782), items: [682, 690], want_response: true }, ItemSet { range: Range(782, 841), items: [801, 823], want_response: true }, ItemSet { range: Range(841, 906), items: [881, 894], want_response: true }, ItemSet { range: Range(906, 923), items: [906], want_response: true }, ItemSet { range: Range(923, 959), items: [], want_response: true }], wants: [965, 980, 228, 235, 242, 495, 500, 634, 654], provide: [(959, true), (979, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(13, 85), items: [13, 27, 31, 36, 42, 55, 75], want_response: false }, ItemSet { range: Range(85, 118), items: [86, 114], want_response: false }, ItemSet { range: Range(118, 221), items: [118, 121, 134, 135, 158, 171, 179, 206], want_response: false }, ItemSet { range: Range(285, 343), items: [285, 297, 298, 303, 306, 312, 332], want_response: false }, ItemSet { range: Range(343, 443), items: [343, 346, 353, 354, 355, 376, 414], want_response: false }, ItemSet { range: Range(443, 495), items: [450, 456, 459], want_response: false }, ItemSet { range: Range(516, 634), items: [528, 552, 600], want_response: false }, ItemSet { range: Range(682, 782), items: [729, 735, 737, 751, 762], want_response: false }, ItemSet { range: Range(782, 841), items: [782, 786, 788, 798, 809], want_response: false }, ItemSet { range: Range(841, 906), items: [841, 845, 858, 879], want_response: false }, ItemSet { range: Range(906, 923), items: [908, 916], want_response: false }, ItemSet { range: Range(923, 959), items: [923, 925, 933, 941, 951, 955], want_response: false }], wants: [221, 252, 259, 515, 655, 669, 56, 63, 85, 109, 300, 309, 350, 388, 443, 447, 516, 534, 682, 690, 801, 823, 881, 894, 906], provide: [(965, true), (980, true), (228, true), (235, true), (242, true), (495, true), (500, true), (634, true), (654, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [13, 27, 31, 36, 42, 55, 75, 86, 114, 118, 121, 134, 135, 158, 171, 179, 206, 285, 297, 298, 303, 306, 312, 332, 343, 346, 353, 354, 355, 376, 414, 450, 456, 459, 528, 552, 600, 729, 735, 737, 751, 762, 782, 786, 788, 798, 809, 841, 845, 858, 879, 908, 916, 923, 925, 933, 941, 951, 955], provide: [(221, true), (252, true), (259, true), (515, true), (655, true), (669, true), (56, true), (63, true), (85, true), (109, true), (300, true), (309, true), (350, true), (388, true), (443, true), (447, true), (516, true), (534, true), (682, true), (690, true), (801, true), (823, true), (881, true), (894, true), (906, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(13, true), (27, true), (31, true), (36, true), (42, true), (55, true), (75, true), (86, true), (114, true), (118, true), (121, true), (134, true), (135, true), (158, true), (171, true), (179, true), (206, true), (285, true), (297, true), (298, true), (303, true), (306, true), (312, true), (332, true), (343, true), (346, true), (353, true), (354, true), (355, true), (376, true), (414, true), (450, true), (456, true), (459, true), (528, true), (552, true), (600, true), (729, true), (735, true), (737, true), (751, true), (762, true), (782, true), (786, true), (788, true), (798, true), (809, true), (841, true), (845, true), (858, true), (879, true), (908, true), (916, true), (923, true), (925, true), (933, true), (941, true), (951, true), (955, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {13, 27, 31, 36, 42, 55, 75, 86, 114, 118, 121, 134, 135, 158, 171, 179, 206, 228, 235, 242, 285, 297, 298, 303, 306, 312, 332, 343, 346, 353, 354, 355, 376, 414, 450, 456, 459, 495, 500, 528, 552, 600, 634, 654, 729, 735, 737, 751, 762, 782, 786, 788, 798, 809, 841, 845, 858, 879, 908, 916, 923, 925, 933, 941, 951, 955, 965, 980} + [959, 979, 221, 252, 259, 515, 655, 669, 56, 63, 85, 109, 300, 309, 350, 388, 443, 447, 516, 534, 682, 690, 801, 823, 881, 894, 906]
[INFO] [stdout] b all: {56, 63, 85, 109, 221, 252, 259, 300, 309, 350, 388, 443, 447, 515, 516, 534, 655, 669, 682, 690, 801, 823, 881, 894, 906, 959, 979} + [965, 980, 228, 235, 242, 495, 500, 634, 654, 13, 27, 31, 36, 42, 55, 75, 86, 114, 118, 121, 134, 135, 158, 171, 179, 206, 285, 297, 298, 303, 306, 312, 332, 343, 346, 353, 354, 355, 376, 414, 450, 456, 459, 528, 552, 600, 729, 735, 737, 751, 762, 782, 786, 788, 798, 809, 841, 845, 858, 879, 908, 916, 923, 925, 933, 941, 951, 955]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [13, 27, 31, 36, 42, 55, 56, 63, 75, 85, 86, 109, 114, 118, 121, 134, 135, 158, 171, 179, 206, 221, 228, 235, 242, 252, 259, 285, 297, 298, 300, 303, 306, 309, 312, 332, 343, 346, 350, 353, 354, 355, 376, 388, 414, 443, 447, 450, 456, 459, 495, 500, 515, 516, 528, 534, 552, 600, 634, 654, 655, 669, 682, 690, 729, 735, 737, 751, 762, 782, 786, 788, 798, 801, 809, 823, 841, 845, 858, 879, 881, 894, 906, 908, 916, 923, 925, 933, 941, 951, 955, 959, 965, 979, 980]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [13, 27, 31, 36, 42, 55, 56, 63, 75, 85, 86, 109, 114, 118, 121, 134, 135, 158, 171, 179, 206, 221, 228, 235, 242, 252, 259, 285, 297, 298, 300, 303, 306, 309, 312, 332, 343, 346, 350, 353, 354, 355, 376, 388, 414, 443, 447, 450, 456, 459, 495, 500, 515, 516, 528, 534, 552, 600, 634, 654, 655, 669, 682, 690, 729, 735, 737, 751, 762, 782, 786, 788, 798, 801, 809, 823, 841, 845, 858, 879, 881, 894, 906, 908, 916, 923, 925, 933, 941, 951, 955, 959, 965, 979, 980], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [13, 27, 31, 36, 42, 55, 56, 63, 75, 85, 86, 109, 114, 118, 121, 134, 135, 158, 171, 179, 206, 221, 228, 235, 242, 252, 259, 285, 297, 298, 300, 303, 306, 309, 312, 332, 343, 346, 350, 353, 354, 355, 376, 388, 414, 443, 447, 450, 456, 459, 495, 500, 515, 516, 528, 534, 552, 600, 634, 654, 655, 669, 682, 690, 729, 735, 737, 751, 762, 782, 786, 788, 798, 801, 809, 823, 841, 845, 858, 879, 881, 894, 906, 908, 916, 923, 925, 933, 941, 951, 955, 959, 965, 979, 980], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 30, 43, 114, 143, 148, 150, 198, 199, 231, 286, 328, 389, 456, 470, 471, 475, 485, 525, 551, 616, 656, 706, 724, 725, 789, 814, 909, 929, 932, 933, 936, 941, 953, 980, 982, 985, 986}
[INFO] [stdout] b items: {1, 8, 54, 79, 80, 87, 112, 114, 126, 146, 149, 151, 186, 203, 226, 239, 240, 248, 256, 264, 270, 271, 274, 278, 360, 369, 399, 403, 422, 440, 442, 460, 462, 470, 475, 484, 495, 503, 529, 543, 545, 546, 572, 598, 605, 610, 614, 619, 632, 647, 652, 667, 674, 689, 694, 703, 706, 721, 735, 740, 749, 756, 759, 783, 808, 817, 829, 849, 854, 855, 860, 869, 896, 906, 909, 911, 922, 944, 958, 959, 965, 972, 976, 982, 991, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 987), fp: EncodedCountingMonoid(38, SumMonoid(21200)) }], item_sets: [ItemSet { range: Range(987, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 598), fp: EncodedCountingMonoid(41, SumMonoid(12972)) }, Fingerprint { range: Range(598, 987), fp: EncodedCountingMonoid(41, SumMonoid(32394)) }], item_sets: [ItemSet { range: Range(987, 12), items: [991, 993, 1, 8], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 286), fp: EncodedCountingMonoid(10, SumMonoid(1268)) }, Fingerprint { range: Range(286, 598), fp: EncodedCountingMonoid(10, SumMonoid(4436)) }, Fingerprint { range: Range(598, 932), fp: EncodedCountingMonoid(9, SumMonoid(6868)) }, Fingerprint { range: Range(932, 987), fp: EncodedCountingMonoid(9, SumMonoid(8628)) }], item_sets: [], wants: [991, 993, 1, 8], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 203), fp: EncodedCountingMonoid(11, SumMonoid(1284)) }, Fingerprint { range: Range(203, 286), fp: EncodedCountingMonoid(11, SumMonoid(2769)) }, Fingerprint { range: Range(286, 475), fp: EncodedCountingMonoid(10, SumMonoid(4227)) }, Fingerprint { range: Range(475, 598), fp: EncodedCountingMonoid(9, SumMonoid(4692)) }, Fingerprint { range: Range(598, 749), fp: EncodedCountingMonoid(17, SumMonoid(11306)) }, Fingerprint { range: Range(749, 932), fp: EncodedCountingMonoid(17, SumMonoid(14332)) }, Fingerprint { range: Range(932, 972), fp: EncodedCountingMonoid(4, SumMonoid(3826)) }, Fingerprint { range: Range(972, 987), fp: EncodedCountingMonoid(3, SumMonoid(2930)) }], item_sets: [], wants: [], provide: [(991, true), (993, true), (1, true), (8, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 148), fp: EncodedCountingMonoid(5, SumMonoid(342)) }, Fingerprint { range: Range(148, 203), fp: EncodedCountingMonoid(4, SumMonoid(695)) }, Fingerprint { range: Range(286, 456), fp: EncodedCountingMonoid(3, SumMonoid(1003)) }, Fingerprint { range: Range(456, 475), fp: EncodedCountingMonoid(3, SumMonoid(1397)) }, Fingerprint { range: Range(598, 724), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(932, 941), fp: EncodedCountingMonoid(3, SumMonoid(2801)) }], item_sets: [ItemSet { range: Range(203, 286), items: [231], want_response: true }, ItemSet { range: Range(475, 525), items: [475, 485], want_response: true }, ItemSet { range: Range(525, 598), items: [525, 551], want_response: true }, ItemSet { range: Range(724, 749), items: [724, 725], want_response: true }, ItemSet { range: Range(749, 909), items: [789, 814], want_response: true }, ItemSet { range: Range(909, 932), items: [909, 929], want_response: true }, ItemSet { range: Range(941, 972), items: [941, 953], want_response: true }, ItemSet { range: Range(972, 985), items: [980, 982], want_response: true }, ItemSet { range: Range(985, 987), items: [985, 986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 112), fp: EncodedCountingMonoid(4, SumMonoid(300)) }, Fingerprint { range: Range(112, 148), fp: EncodedCountingMonoid(4, SumMonoid(498)) }, Fingerprint { range: Range(286, 422), fp: EncodedCountingMonoid(4, SumMonoid(1531)) }, Fingerprint { range: Range(422, 456), fp: EncodedCountingMonoid(3, SumMonoid(1304)) }, Fingerprint { range: Range(598, 667), fp: EncodedCountingMonoid(8, SumMonoid(4977)) }, Fingerprint { range: Range(667, 724), fp: EncodedCountingMonoid(7, SumMonoid(4854)) }], item_sets: [ItemSet { range: Range(203, 286), items: [203, 226, 239, 240, 248, 256, 264, 270, 271, 274, 278], want_response: false }, ItemSet { range: Range(475, 525), items: [475, 484, 495, 503], want_response: false }, ItemSet { range: Range(525, 598), items: [529, 543, 545, 546, 572], want_response: false }, ItemSet { range: Range(724, 749), items: [735, 740], want_response: false }, ItemSet { range: Range(749, 909), items: [749, 756, 759, 783, 808, 817, 829, 849, 854, 855, 860, 869, 896, 906], want_response: false }, ItemSet { range: Range(909, 932), items: [909, 911, 922], want_response: false }, ItemSet { range: Range(941, 972), items: [944, 958, 959, 965], want_response: false }, ItemSet { range: Range(972, 985), items: [972, 976, 982], want_response: false }, ItemSet { range: Range(985, 987), items: [], want_response: false }, ItemSet { range: Range(148, 186), items: [149, 151], want_response: true }, ItemSet { range: Range(186, 203), items: [186], want_response: true }, ItemSet { range: Range(456, 470), items: [460, 462], want_response: true }, ItemSet { range: Range(470, 475), items: [470], want_response: true }, ItemSet { range: Range(932, 941), items: [], want_response: true }], wants: [231, 485, 525, 551, 724, 725, 789, 814, 929, 941, 953, 980, 985, 986], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(148, 186), items: [148, 150], want_response: false }, ItemSet { range: Range(186, 203), items: [198, 199], want_response: false }, ItemSet { range: Range(456, 470), items: [456], want_response: false }, ItemSet { range: Range(470, 475), items: [470, 471], want_response: false }, ItemSet { range: Range(932, 941), items: [932, 933, 936], want_response: false }, ItemSet { range: Range(12, 43), items: [12, 30], want_response: true }, ItemSet { range: Range(43, 112), items: [43], want_response: true }, ItemSet { range: Range(112, 148), items: [114, 143], want_response: true }, ItemSet { range: Range(286, 389), items: [286, 328], want_response: true }, ItemSet { range: Range(389, 422), items: [389], want_response: true }, ItemSet { range: Range(422, 456), items: [], want_response: true }, ItemSet { range: Range(598, 667), items: [616, 656], want_response: true }, ItemSet { range: Range(667, 724), items: [706], want_response: true }], wants: [203, 226, 239, 240, 248, 256, 264, 270, 271, 274, 278, 484, 495, 503, 529, 543, 545, 546, 572, 735, 740, 749, 756, 759, 783, 808, 817, 829, 849, 854, 855, 860, 869, 896, 906, 911, 922, 944, 958, 959, 965, 972, 976, 149, 151, 186, 460, 462], provide: [(231, true), (485, true), (525, true), (551, true), (724, true), (725, true), (789, true), (814, true), (929, true), (941, true), (953, true), (980, true), (985, true), (986, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 43), items: [], want_response: false }, ItemSet { range: Range(43, 112), items: [54, 79, 80, 87], want_response: false }, ItemSet { range: Range(112, 148), items: [112, 114, 126, 146], want_response: false }, ItemSet { range: Range(286, 389), items: [360, 369], want_response: false }, ItemSet { range: Range(389, 422), items: [399, 403], want_response: false }, ItemSet { range: Range(422, 456), items: [422, 440, 442], want_response: false }, ItemSet { range: Range(598, 667), items: [598, 605, 610, 614, 619, 632, 647, 652], want_response: false }, ItemSet { range: Range(667, 724), items: [667, 674, 689, 694, 703, 706, 721], want_response: false }], wants: [148, 150, 198, 199, 456, 471, 932, 933, 936, 12, 30, 43, 143, 286, 328, 389, 616, 656], provide: [(203, true), (226, true), (239, true), (240, true), (248, true), (256, true), (264, true), (270, true), (271, true), (274, true), (278, true), (484, true), (495, true), (503, true), (529, true), (543, true), (545, true), (546, true), (572, true), (735, true), (740, true), (749, true), (756, true), (759, true), (783, true), (808, true), (817, true), (829, true), (849, true), (854, true), (855, true), (860, true), (869, true), (896, true), (906, true), (911, true), (922, true), (944, true), (958, true), (959, true), (965, true), (972, true), (976, true), (149, true), (151, true), (186, true), (460, true), (462, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [54, 79, 80, 87, 112, 126, 146, 360, 369, 399, 403, 422, 440, 442, 598, 605, 610, 614, 619, 632, 647, 652, 667, 674, 689, 694, 703, 721], provide: [(148, true), (150, true), (198, true), (199, true), (456, true), (471, true), (932, true), (933, true), (936, true), (12, true), (30, true), (43, true), (143, true), (286, true), (328, true), (389, true), (616, true), (656, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(54, true), (79, true), (80, true), (87, true), (112, true), (126, true), (146, true), (360, true), (369, true), (399, true), (403, true), (422, true), (440, true), (442, true), (598, true), (605, true), (610, true), (614, true), (619, true), (632, true), (647, true), (652, true), (667, true), (674, true), (689, true), (694, true), (703, true), (721, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 30, 43, 114, 143, 148, 150, 198, 199, 231, 286, 328, 389, 456, 470, 471, 475, 485, 525, 551, 616, 656, 706, 724, 725, 789, 814, 909, 929, 932, 933, 936, 941, 953, 980, 982, 985, 986} + [991, 993, 1, 8, 203, 226, 239, 240, 248, 256, 264, 270, 271, 274, 278, 484, 495, 503, 529, 543, 545, 546, 572, 735, 740, 749, 756, 759, 783, 808, 817, 829, 849, 854, 855, 860, 869, 896, 906, 911, 922, 944, 958, 959, 965, 972, 976, 149, 151, 186, 460, 462, 54, 79, 80, 87, 112, 126, 146, 360, 369, 399, 403, 422, 440, 442, 598, 605, 610, 614, 619, 632, 647, 652, 667, 674, 689, 694, 703, 721]
[INFO] [stdout] b all: {1, 8, 54, 79, 80, 87, 112, 114, 126, 146, 149, 151, 186, 203, 226, 239, 240, 248, 256, 264, 270, 271, 274, 278, 360, 369, 399, 403, 422, 440, 442, 460, 462, 470, 475, 484, 495, 503, 529, 543, 545, 546, 572, 598, 605, 610, 614, 619, 632, 647, 652, 667, 674, 689, 694, 703, 706, 721, 735, 740, 749, 756, 759, 783, 808, 817, 829, 849, 854, 855, 860, 869, 896, 906, 909, 911, 922, 944, 958, 959, 965, 972, 976, 982, 991, 993} + [231, 485, 525, 551, 724, 725, 789, 814, 929, 941, 953, 980, 985, 986, 148, 150, 198, 199, 456, 471, 932, 933, 936, 12, 30, 43, 143, 286, 328, 389, 616, 656]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 8, 12, 30, 43, 54, 79, 80, 87, 112, 114, 126, 143, 146, 148, 149, 150, 151, 186, 198, 199, 203, 226, 231, 239, 240, 248, 256, 264, 270, 271, 274, 278, 286, 328, 360, 369, 389, 399, 403, 422, 440, 442, 456, 460, 462, 470, 471, 475, 484, 485, 495, 503, 525, 529, 543, 545, 546, 551, 572, 598, 605, 610, 614, 616, 619, 632, 647, 652, 656, 667, 674, 689, 694, 703, 706, 721, 724, 725, 735, 740, 749, 756, 759, 783, 789, 808, 814, 817, 829, 849, 854, 855, 860, 869, 896, 906, 909, 911, 922, 929, 932, 933, 936, 941, 944, 953, 958, 959, 965, 972, 976, 980, 982, 985, 986, 991, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 8, 12, 30, 43, 54, 79, 80, 87, 112, 114, 126, 143, 146, 148, 149, 150, 151, 186, 198, 199, 203, 226, 231, 239, 240, 248, 256, 264, 270, 271, 274, 278, 286, 328, 360, 369, 389, 399, 403, 422, 440, 442, 456, 460, 462, 470, 471, 475, 484, 485, 495, 503, 525, 529, 543, 545, 546, 551, 572, 598, 605, 610, 614, 616, 619, 632, 647, 652, 656, 667, 674, 689, 694, 703, 706, 721, 724, 725, 735, 740, 749, 756, 759, 783, 789, 808, 814, 817, 829, 849, 854, 855, 860, 869, 896, 906, 909, 911, 922, 929, 932, 933, 936, 941, 944, 953, 958, 959, 965, 972, 976, 980, 982, 985, 986, 991, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 8, 12, 30, 43, 54, 79, 80, 87, 112, 114, 126, 143, 146, 148, 149, 150, 151, 186, 198, 199, 203, 226, 231, 239, 240, 248, 256, 264, 270, 271, 274, 278, 286, 328, 360, 369, 389, 399, 403, 422, 440, 442, 456, 460, 462, 470, 471, 475, 484, 485, 495, 503, 525, 529, 543, 545, 546, 551, 572, 598, 605, 610, 614, 616, 619, 632, 647, 652, 656, 667, 674, 689, 694, 703, 706, 721, 724, 725, 735, 740, 749, 756, 759, 783, 789, 808, 814, 817, 829, 849, 854, 855, 860, 869, 896, 906, 909, 911, 922, 929, 932, 933, 936, 941, 944, 953, 958, 959, 965, 972, 976, 980, 982, 985, 986, 991, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {25, 93, 104, 136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495, 561, 592, 626, 635, 643, 686, 729, 731, 738, 777, 787, 925, 981, 982, 984}
[INFO] [stdout] b items: {29, 34, 75, 125, 597, 826}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(25, 985), fp: EncodedCountingMonoid(33, SumMonoid(15812)) }], item_sets: [ItemSet { range: Range(985, 25), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(25, 125), fp: EncodedCountingMonoid(3, SumMonoid(138)) }, Fingerprint { range: Range(125, 985), fp: EncodedCountingMonoid(3, SumMonoid(1548)) }], item_sets: [ItemSet { range: Range(985, 25), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(125, 561), fp: EncodedCountingMonoid(15, SumMonoid(4213)) }, Fingerprint { range: Range(561, 985), fp: EncodedCountingMonoid(15, SumMonoid(11377)) }], item_sets: [ItemSet { range: Range(25, 104), items: [25, 93], want_response: true }, ItemSet { range: Range(104, 125), items: [104], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(25, 104), items: [29, 34, 75], want_response: false }, ItemSet { range: Range(104, 125), items: [], want_response: false }, ItemSet { range: Range(125, 561), items: [125], want_response: true }, ItemSet { range: Range(561, 985), items: [597, 826], want_response: true }], wants: [25, 93, 104], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(125, 561), items: [136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495], want_response: false }, ItemSet { range: Range(561, 985), items: [561, 592, 626, 635, 643, 686, 729, 731, 738, 777, 787, 925, 981, 982, 984], want_response: false }], wants: [29, 34, 75, 125, 597, 826], provide: [(25, true), (93, true), (104, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495, 561, 592, 626, 635, 643, 686, 729, 731, 738, 777, 787, 925, 981, 982, 984], provide: [(29, true), (34, true), (75, true), (125, true), (597, true), (826, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(136, true), (154, true), (181, true), (187, true), (207, true), (230, true), (257, true), (274, true), (282, true), (306, true), (338, true), (362, true), (371, true), (433, true), (495, true), (561, true), (592, true), (626, true), (635, true), (643, true), (686, true), (729, true), (731, true), (738, true), (777, true), (787, true), (925, true), (981, true), (982, true), (984, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {25, 93, 104, 136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495, 561, 592, 626, 635, 643, 686, 729, 731, 738, 777, 787, 925, 981, 982, 984} + [29, 34, 75, 125, 597, 826]
[INFO] [stdout] b all: {29, 34, 75, 125, 597, 826} + [25, 93, 104, 136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495, 561, 592, 626, 635, 643, 686, 729, 731, 738, 777, 787, 925, 981, 982, 984]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [25, 29, 34, 75, 93, 104, 125, 136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495, 561, 592, 597, 626, 635, 643, 686, 729, 731, 738, 777, 787, 826, 925, 981, 982, 984]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [25, 29, 34, 75, 93, 104, 125, 136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495, 561, 592, 597, 626, 635, 643, 686, 729, 731, 738, 777, 787, 826, 925, 981, 982, 984], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [25, 29, 34, 75, 93, 104, 125, 136, 154, 181, 187, 207, 230, 257, 274, 282, 306, 338, 362, 371, 433, 495, 561, 592, 597, 626, 635, 643, 686, 729, 731, 738, 777, 787, 826, 925, 981, 982, 984], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 909, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(39, SumMonoid(15898)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(14, SumMonoid(1866)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(14, SumMonoid(5422)) }, Fingerprint { range: Range(570, 869), fp: EncodedCountingMonoid(6, SumMonoid(4062)) }, Fingerprint { range: Range(869, 954), fp: EncodedCountingMonoid(5, SumMonoid(4548)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 778), fp: EncodedCountingMonoid(11, SumMonoid(7279)) }, Fingerprint { range: Range(778, 869), fp: EncodedCountingMonoid(10, SumMonoid(8169)) }, Fingerprint { range: Range(869, 917), fp: EncodedCountingMonoid(4, SumMonoid(3560)) }, Fingerprint { range: Range(917, 954), fp: EncodedCountingMonoid(3, SumMonoid(2784)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 41), fp: EncodedCountingMonoid(3, SumMonoid(48)) }, Fingerprint { range: Range(41, 155), fp: EncodedCountingMonoid(3, SumMonoid(143)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 332), fp: EncodedCountingMonoid(5, SumMonoid(1473)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }, Fingerprint { range: Range(570, 695), fp: EncodedCountingMonoid(3, SumMonoid(1849)) }, Fingerprint { range: Range(695, 778), fp: EncodedCountingMonoid(3, SumMonoid(2213)) }], item_sets: [ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(778, 869), items: [], want_response: true }, ItemSet { range: Range(869, 909), items: [869, 871], want_response: true }, ItemSet { range: Range(909, 917), items: [909], want_response: true }, ItemSet { range: Range(917, 954), items: [946, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(41, 93), fp: EncodedCountingMonoid(4, SumMonoid(271)) }, Fingerprint { range: Range(93, 155), fp: EncodedCountingMonoid(3, SumMonoid(359)) }, Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }, Fingerprint { range: Range(570, 621), fp: EncodedCountingMonoid(3, SumMonoid(1738)) }, Fingerprint { range: Range(621, 695), fp: EncodedCountingMonoid(3, SumMonoid(1931)) }, Fingerprint { range: Range(695, 724), fp: EncodedCountingMonoid(3, SumMonoid(2115)) }], item_sets: [ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(778, 869), items: [778, 780, 793, 794, 801, 834, 836, 845, 848, 860], want_response: false }, ItemSet { range: Range(869, 909), items: [882, 888, 891, 899], want_response: false }, ItemSet { range: Range(909, 917), items: [], want_response: false }, ItemSet { range: Range(917, 954), items: [917, 929, 938], want_response: false }, ItemSet { range: Range(5, 41), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }, ItemSet { range: Range(724, 778), items: [724, 771], want_response: true }], wants: [505, 536, 869, 871, 909, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 41), items: [5, 16, 27], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [402, 407], want_response: false }, ItemSet { range: Range(724, 778), items: [757, 761], want_response: false }, ItemSet { range: Range(41, 60), items: [41, 42], want_response: true }, ItemSet { range: Range(60, 93), items: [60], want_response: true }, ItemSet { range: Range(93, 155), items: [], want_response: true }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(570, 621), items: [603, 605], want_response: true }, ItemSet { range: Range(621, 695), items: [641], want_response: true }, ItemSet { range: Range(695, 724), items: [695], want_response: true }], wants: [778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 724, 771], provide: [(505, true), (536, true), (869, true), (871, true), (909, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(41, 60), items: [45, 54], want_response: false }, ItemSet { range: Range(60, 93), items: [84, 88], want_response: false }, ItemSet { range: Range(93, 155), items: [93, 119, 147], want_response: false }, ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }, ItemSet { range: Range(570, 621), items: [570, 573, 595], want_response: false }, ItemSet { range: Range(621, 695), items: [621, 634, 676], want_response: false }, ItemSet { range: Range(695, 724), items: [702, 704, 709], want_response: false }], wants: [5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 402, 407, 757, 761, 41, 42, 60, 449, 471, 504, 603, 605, 641, 695], provide: [(778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (724, true), (771, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709], provide: [(5, true), (16, true), (27, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (402, true), (407, true), (757, true), (761, true), (41, true), (42, true), (60, true), (449, true), (471, true), (504, true), (603, true), (605, true), (641, true), (695, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 909, 946, 953} + [962, 983, 991, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 724, 771, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [505, 536, 869, 871, 909, 946, 953, 5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 402, 407, 757, 761, 41, 42, 60, 449, 471, 504, 603, 605, 641, 695]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 909, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(38, SumMonoid(15684)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(14, SumMonoid(1927)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(13, SumMonoid(5147)) }, Fingerprint { range: Range(570, 869), fp: EncodedCountingMonoid(6, SumMonoid(4062)) }, Fingerprint { range: Range(869, 954), fp: EncodedCountingMonoid(5, SumMonoid(4548)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 778), fp: EncodedCountingMonoid(11, SumMonoid(7279)) }, Fingerprint { range: Range(778, 869), fp: EncodedCountingMonoid(10, SumMonoid(8169)) }, Fingerprint { range: Range(869, 917), fp: EncodedCountingMonoid(4, SumMonoid(3560)) }, Fingerprint { range: Range(917, 954), fp: EncodedCountingMonoid(3, SumMonoid(2784)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 41), fp: EncodedCountingMonoid(3, SumMonoid(48)) }, Fingerprint { range: Range(41, 155), fp: EncodedCountingMonoid(3, SumMonoid(143)) }, Fingerprint { range: Range(155, 221), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(221, 277), fp: EncodedCountingMonoid(4, SumMonoid(996)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }, Fingerprint { range: Range(570, 695), fp: EncodedCountingMonoid(3, SumMonoid(1849)) }, Fingerprint { range: Range(695, 778), fp: EncodedCountingMonoid(3, SumMonoid(2213)) }], item_sets: [ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(778, 869), items: [], want_response: true }, ItemSet { range: Range(869, 909), items: [869, 871], want_response: true }, ItemSet { range: Range(909, 917), items: [909], want_response: true }, ItemSet { range: Range(917, 954), items: [946, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(41, 93), fp: EncodedCountingMonoid(4, SumMonoid(271)) }, Fingerprint { range: Range(93, 155), fp: EncodedCountingMonoid(3, SumMonoid(359)) }, Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }, Fingerprint { range: Range(570, 621), fp: EncodedCountingMonoid(3, SumMonoid(1738)) }, Fingerprint { range: Range(621, 695), fp: EncodedCountingMonoid(3, SumMonoid(1931)) }, Fingerprint { range: Range(695, 724), fp: EncodedCountingMonoid(3, SumMonoid(2115)) }], item_sets: [ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(778, 869), items: [778, 780, 793, 794, 801, 834, 836, 845, 848, 860], want_response: false }, ItemSet { range: Range(869, 909), items: [882, 888, 891, 899], want_response: false }, ItemSet { range: Range(909, 917), items: [], want_response: false }, ItemSet { range: Range(917, 954), items: [917, 929, 938], want_response: false }, ItemSet { range: Range(5, 41), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 221), items: [206], want_response: true }, ItemSet { range: Range(221, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 277), items: [241, 245], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }, ItemSet { range: Range(724, 778), items: [724, 771], want_response: true }], wants: [505, 536, 869, 871, 909, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 41), items: [5, 16, 27], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 221), items: [], want_response: false }, ItemSet { range: Range(221, 241), items: [221], want_response: false }, ItemSet { range: Range(241, 277), items: [245, 255, 275], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [402, 407], want_response: false }, ItemSet { range: Range(724, 778), items: [757, 761], want_response: false }, ItemSet { range: Range(41, 60), items: [41, 42], want_response: true }, ItemSet { range: Range(60, 93), items: [60], want_response: true }, ItemSet { range: Range(93, 155), items: [], want_response: true }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(570, 621), items: [603, 605], want_response: true }, ItemSet { range: Range(621, 695), items: [641], want_response: true }, ItemSet { range: Range(695, 724), items: [695], want_response: true }], wants: [778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 724, 771], provide: [(505, true), (536, true), (869, true), (871, true), (909, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(41, 60), items: [45, 54], want_response: false }, ItemSet { range: Range(60, 93), items: [84, 88], want_response: false }, ItemSet { range: Range(93, 155), items: [93, 119, 147], want_response: false }, ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }, ItemSet { range: Range(570, 621), items: [570, 573, 595], want_response: false }, ItemSet { range: Range(621, 695), items: [621, 634, 676], want_response: false }, ItemSet { range: Range(695, 724), items: [702, 704, 709], want_response: false }], wants: [5, 16, 27, 159, 185, 195, 201, 221, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 757, 761, 41, 42, 60, 449, 471, 504, 603, 605, 641, 695], provide: [(778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (724, true), (771, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709], provide: [(5, true), (16, true), (27, true), (159, true), (185, true), (195, true), (201, true), (221, true), (255, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (402, true), (407, true), (757, true), (761, true), (41, true), (42, true), (60, true), (449, true), (471, true), (504, true), (603, true), (605, true), (641, true), (695, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 909, 946, 953} + [962, 983, 991, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 724, 771, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [505, 536, 869, 871, 909, 946, 953, 5, 16, 27, 159, 185, 195, 201, 221, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 757, 761, 41, 42, 60, 449, 471, 504, 603, 605, 641, 695]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 16, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 402, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 871, 882, 888, 891, 899, 909, 917, 929, 938, 946, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 16, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 402, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 871, 882, 888, 891, 899, 909, 917, 929, 938, 946, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 16, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 402, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 871, 882, 888, 891, 899, 909, 917, 929, 938, 946, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 909, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(39, SumMonoid(15898)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(14, SumMonoid(1866)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(14, SumMonoid(5422)) }, Fingerprint { range: Range(570, 869), fp: EncodedCountingMonoid(6, SumMonoid(4062)) }, Fingerprint { range: Range(869, 954), fp: EncodedCountingMonoid(5, SumMonoid(4548)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 778), fp: EncodedCountingMonoid(11, SumMonoid(7279)) }, Fingerprint { range: Range(778, 869), fp: EncodedCountingMonoid(10, SumMonoid(8169)) }, Fingerprint { range: Range(869, 917), fp: EncodedCountingMonoid(4, SumMonoid(3560)) }, Fingerprint { range: Range(917, 954), fp: EncodedCountingMonoid(3, SumMonoid(2784)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 41), fp: EncodedCountingMonoid(3, SumMonoid(48)) }, Fingerprint { range: Range(41, 155), fp: EncodedCountingMonoid(3, SumMonoid(143)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 332), fp: EncodedCountingMonoid(5, SumMonoid(1473)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }, Fingerprint { range: Range(570, 695), fp: EncodedCountingMonoid(3, SumMonoid(1849)) }, Fingerprint { range: Range(695, 778), fp: EncodedCountingMonoid(3, SumMonoid(2213)) }], item_sets: [ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(778, 869), items: [], want_response: true }, ItemSet { range: Range(869, 909), items: [869, 871], want_response: true }, ItemSet { range: Range(909, 917), items: [909], want_response: true }, ItemSet { range: Range(917, 954), items: [946, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(41, 93), fp: EncodedCountingMonoid(4, SumMonoid(271)) }, Fingerprint { range: Range(93, 155), fp: EncodedCountingMonoid(3, SumMonoid(359)) }, Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }, Fingerprint { range: Range(570, 621), fp: EncodedCountingMonoid(3, SumMonoid(1738)) }, Fingerprint { range: Range(621, 695), fp: EncodedCountingMonoid(3, SumMonoid(1931)) }, Fingerprint { range: Range(695, 724), fp: EncodedCountingMonoid(3, SumMonoid(2115)) }], item_sets: [ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(778, 869), items: [778, 780, 793, 794, 801, 834, 836, 845, 848, 860], want_response: false }, ItemSet { range: Range(869, 909), items: [882, 888, 891, 899], want_response: false }, ItemSet { range: Range(909, 917), items: [], want_response: false }, ItemSet { range: Range(917, 954), items: [917, 929, 938], want_response: false }, ItemSet { range: Range(5, 41), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }, ItemSet { range: Range(724, 778), items: [724, 771], want_response: true }], wants: [505, 536, 869, 871, 909, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 41), items: [5, 16, 27], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [402, 407], want_response: false }, ItemSet { range: Range(724, 778), items: [757, 761], want_response: false }, ItemSet { range: Range(41, 60), items: [41, 42], want_response: true }, ItemSet { range: Range(60, 93), items: [60], want_response: true }, ItemSet { range: Range(93, 155), items: [], want_response: true }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(570, 621), items: [603, 605], want_response: true }, ItemSet { range: Range(621, 695), items: [641], want_response: true }, ItemSet { range: Range(695, 724), items: [695], want_response: true }], wants: [778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 724, 771], provide: [(505, true), (536, true), (869, true), (871, true), (909, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(41, 60), items: [45, 54], want_response: false }, ItemSet { range: Range(60, 93), items: [84, 88], want_response: false }, ItemSet { range: Range(93, 155), items: [93, 119, 147], want_response: false }, ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }, ItemSet { range: Range(570, 621), items: [570, 573, 595], want_response: false }, ItemSet { range: Range(621, 695), items: [621, 634, 676], want_response: false }, ItemSet { range: Range(695, 724), items: [702, 704, 709], want_response: false }], wants: [5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 402, 407, 757, 761, 41, 42, 60, 449, 471, 504, 603, 605, 641, 695], provide: [(778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (724, true), (771, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709], provide: [(5, true), (16, true), (27, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (402, true), (407, true), (757, true), (761, true), (41, true), (42, true), (60, true), (449, true), (471, true), (504, true), (603, true), (605, true), (641, true), (695, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 909, 946, 953} + [962, 983, 991, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 724, 771, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [505, 536, 869, 871, 909, 946, 953, 5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 402, 407, 757, 761, 41, 42, 60, 449, 471, 504, 603, 605, 641, 695]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(38, SumMonoid(14989)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(14, SumMonoid(1866)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(14, SumMonoid(5422)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(5, SumMonoid(4400)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 41), fp: EncodedCountingMonoid(3, SumMonoid(48)) }, Fingerprint { range: Range(41, 155), fp: EncodedCountingMonoid(3, SumMonoid(143)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 332), fp: EncodedCountingMonoid(5, SumMonoid(1473)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 946), items: [869, 871], want_response: true }, ItemSet { range: Range(946, 954), items: [946, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(41, 93), fp: EncodedCountingMonoid(4, SumMonoid(271)) }, Fingerprint { range: Range(93, 155), fp: EncodedCountingMonoid(3, SumMonoid(359)) }, Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 946), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(946, 954), items: [], want_response: false }, ItemSet { range: Range(5, 41), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 41), items: [5, 16, 27], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [402, 407], want_response: false }, ItemSet { range: Range(41, 60), items: [41, 42], want_response: true }, ItemSet { range: Range(60, 93), items: [60], want_response: true }, ItemSet { range: Range(93, 155), items: [], want_response: true }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (871, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(41, 60), items: [45, 54], want_response: false }, ItemSet { range: Range(60, 93), items: [84, 88], want_response: false }, ItemSet { range: Range(93, 155), items: [93, 119, 147], want_response: false }, ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 402, 407, 41, 42, 60, 449, 471, 504], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (16, true), (27, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (402, true), (407, true), (41, true), (42, true), (60, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 402, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953, 5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 402, 407, 41, 42, 60, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(37, SumMonoid(14587)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(14, SumMonoid(1866)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(13, SumMonoid(5020)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(5, SumMonoid(4400)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 41), fp: EncodedCountingMonoid(3, SumMonoid(48)) }, Fingerprint { range: Range(41, 155), fp: EncodedCountingMonoid(3, SumMonoid(143)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 325), fp: EncodedCountingMonoid(4, SumMonoid(1148)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(4, SumMonoid(1407)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 946), items: [869, 871], want_response: true }, ItemSet { range: Range(946, 954), items: [946, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(41, 93), fp: EncodedCountingMonoid(4, SumMonoid(271)) }, Fingerprint { range: Range(93, 155), fp: EncodedCountingMonoid(3, SumMonoid(359)) }, Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 946), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(946, 954), items: [], want_response: false }, ItemSet { range: Range(5, 41), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 41), items: [5, 16, 27], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(41, 60), items: [41, 42], want_response: true }, ItemSet { range: Range(60, 93), items: [60], want_response: true }, ItemSet { range: Range(93, 155), items: [], want_response: true }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (871, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(41, 60), items: [45, 54], want_response: false }, ItemSet { range: Range(60, 93), items: [84, 88], want_response: false }, ItemSet { range: Range(93, 155), items: [93, 119, 147], want_response: false }, ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 41, 42, 60, 449, 471, 504], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (16, true), (27, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (41, true), (42, true), (60, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 16, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953, 5, 16, 27, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 41, 42, 60, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(36, SumMonoid(14571)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(13, SumMonoid(5020)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(5, SumMonoid(4400)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 325), fp: EncodedCountingMonoid(4, SumMonoid(1148)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(4, SumMonoid(1407)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 946), items: [869, 871], want_response: true }, ItemSet { range: Range(946, 954), items: [946, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 946), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(946, 954), items: [], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (871, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 871, 946, 953, 5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(35, SumMonoid(13700)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(13, SumMonoid(5020)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(4, SumMonoid(3529)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 325), fp: EncodedCountingMonoid(4, SumMonoid(1148)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(4, SumMonoid(1407)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 953), items: [869, 946], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 953), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953, 5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 954), fp: EncodedCountingMonoid(34, SumMonoid(13695)) }], item_sets: [ItemSet { range: Range(954, 27), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(27, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 27), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(27, 277), fp: EncodedCountingMonoid(13, SumMonoid(2120)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(4, SumMonoid(3529)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(27, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 221), fp: EncodedCountingMonoid(5, SumMonoid(954)) }, Fingerprint { range: Range(221, 277), fp: EncodedCountingMonoid(4, SumMonoid(996)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(27, 42), items: [27, 41], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 953), items: [869, 946], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(27, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 953), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 221), items: [206], want_response: true }, ItemSet { range: Range(221, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 277), items: [241, 245], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [27, 41, 42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 221), items: [214], want_response: false }, ItemSet { range: Range(221, 241), items: [221], want_response: false }, ItemSet { range: Range(241, 277), items: [245, 255, 275], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(27, true), (41, true), (42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [159, 185, 195, 201, 214, 221, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(159, true), (185, true), (195, true), (201, true), (214, true), (221, true), (255, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [27, 41, 42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953, 159, 185, 195, 201, 214, 221, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 946, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 946, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 946, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(35, SumMonoid(13700)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(13, SumMonoid(5020)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(4, SumMonoid(3529)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 325), fp: EncodedCountingMonoid(4, SumMonoid(1148)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(4, SumMonoid(1407)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 953), items: [869, 946], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 953), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953, 5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(34, SumMonoid(13455)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1880)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(4, SumMonoid(3529)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(965)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 953), items: [869, 946], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 953), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 277), items: [241, 245], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 277), items: [255, 275], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (245, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (214, true), (221, true), (255, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953, 5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 946, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 946, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 275, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 946, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(35, SumMonoid(13700)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 275), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(275, 570), fp: EncodedCountingMonoid(13, SumMonoid(5020)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(4, SumMonoid(3529)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 275), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(275, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 275), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(275, 325), fp: EncodedCountingMonoid(4, SumMonoid(1148)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(4, SumMonoid(1407)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 953), items: [869, 946], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 953), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(275, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(275, 321), items: [275, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (275, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953, 5, 27, 41, 159, 185, 195, 201, 275, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(34, SumMonoid(13425)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(5, SumMonoid(3301)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(4, SumMonoid(3529)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 953), items: [869, 946], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 953), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (946, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 946, 953, 5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(33, SumMonoid(12479)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 757), fp: EncodedCountingMonoid(4, SumMonoid(2544)) }, Fingerprint { range: Range(757, 954), fp: EncodedCountingMonoid(4, SumMonoid(3340)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 757), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(757, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 757), items: [695], want_response: true }, ItemSet { range: Range(757, 848), items: [757, 761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 757), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(757, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(32, SumMonoid(12072)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(12, SumMonoid(1595)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(12, SumMonoid(4593)) }, Fingerprint { range: Range(570, 757), fp: EncodedCountingMonoid(4, SumMonoid(2544)) }, Fingerprint { range: Range(757, 954), fp: EncodedCountingMonoid(4, SumMonoid(3340)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 757), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(757, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 325), fp: EncodedCountingMonoid(4, SumMonoid(1128)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(3, SumMonoid(1000)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 757), items: [695], want_response: true }, ItemSet { range: Range(757, 848), items: [757, 761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 757), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(757, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 277, 286, 310, 325, 332, 343, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (214, true), (221, true), (255, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 277, 286, 310, 325, 332, 343, 449, 471, 504]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 603, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(33, SumMonoid(12479)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 757), fp: EncodedCountingMonoid(4, SumMonoid(2544)) }, Fingerprint { range: Range(757, 954), fp: EncodedCountingMonoid(4, SumMonoid(3340)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 757), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(757, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 641), items: [603, 605], want_response: true }, ItemSet { range: Range(641, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 757), items: [695], want_response: true }, ItemSet { range: Range(757, 848), items: [757, 761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 676), items: [], want_response: false }, ItemSet { range: Range(676, 757), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(757, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (603, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 603, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(32, SumMonoid(11876)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(31, SumMonoid(11675)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(12, SumMonoid(1649)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 221), fp: EncodedCountingMonoid(4, SumMonoid(753)) }, Fingerprint { range: Range(221, 277), fp: EncodedCountingMonoid(3, SumMonoid(721)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 221), items: [206], want_response: true }, ItemSet { range: Range(221, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 277), items: [241, 245], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195], want_response: false }, ItemSet { range: Range(206, 221), items: [214], want_response: false }, ItemSet { range: Range(221, 241), items: [221], want_response: false }, ItemSet { range: Range(241, 277), items: [245, 255], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 214, 221, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (214, true), (221, true), (255, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 214, 221, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(32, SumMonoid(11876)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(31, SumMonoid(11371)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(12, SumMonoid(1595)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(12, SumMonoid(4495)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 325), fp: EncodedCountingMonoid(4, SumMonoid(1128)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(4, SumMonoid(1407)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 504), items: [449, 471], want_response: true }, ItemSet { range: Range(504, 570), items: [504, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 504), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(504, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 449, 471, 504, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (449, true), (471, true), (504, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 277, 286, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (214, true), (221, true), (255, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 449, 471, 504, 536, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 277, 286, 310, 325, 332, 343, 407]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(32, SumMonoid(11876)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(31, SumMonoid(11340)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(12, SumMonoid(1595)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(12, SumMonoid(4464)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 325), fp: EncodedCountingMonoid(4, SumMonoid(1128)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(4, SumMonoid(1407)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 504), items: [449, 471], want_response: true }, ItemSet { range: Range(504, 570), items: [504, 505], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 504), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(504, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 325), items: [321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 449, 471, 504, 505, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 277, 286, 310], want_response: false }, ItemSet { range: Range(321, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (449, true), (471, true), (504, true), (505, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 277, 286, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (214, true), (221, true), (255, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 449, 471, 504, 505, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 214, 221, 255, 277, 286, 310, 325, 332, 343, 407]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 41, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 449, 453, 464, 471, 492, 496, 504, 505, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(32, SumMonoid(11876)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(13, SumMonoid(1850)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 42), fp: EncodedCountingMonoid(3, SumMonoid(73)) }, Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(5, 42), items: [], want_response: true }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27, 41], want_response: false }, ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(42, true), (60, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (27, true), (41, true), (159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 41, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953, 5, 27, 41, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(31, SumMonoid(11835)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(12, SumMonoid(1809)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(12, SumMonoid(4745)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }, Fingerprint { range: Range(416, 505), fp: EncodedCountingMonoid(3, SumMonoid(1424)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(416, 464), fp: EncodedCountingMonoid(4, SumMonoid(1743)) }, Fingerprint { range: Range(464, 505), fp: EncodedCountingMonoid(3, SumMonoid(1452)) }], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }, ItemSet { range: Range(416, 464), items: [449], want_response: true }, ItemSet { range: Range(464, 505), items: [471, 504], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(416, 464), items: [416, 435, 439, 453], want_response: false }, ItemSet { range: Range(464, 505), items: [464, 492, 496], want_response: false }], wants: [159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [416, 435, 439, 453, 464, 492, 496], provide: [(159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true), (449, true), (471, true), (504, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 505, 536, 605, 641, 695, 757, 761, 869, 953, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407, 449, 471, 504]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(30, SumMonoid(11386)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(12, SumMonoid(1809)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(11, SumMonoid(4296)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(29, SumMonoid(11100)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(11, SumMonoid(1554)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(11, SumMonoid(4265)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 332), fp: EncodedCountingMonoid(4, SumMonoid(1167)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 277, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [159, 185, 195, 201, 214, 221, 255, 277, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(159, true), (185, true), (195, true), (201, true), (214, true), (221, true), (255, true), (277, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 159, 185, 195, 201, 214, 221, 255, 277, 310, 325, 332, 343, 407]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 255, 277, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(30, SumMonoid(11386)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(12, SumMonoid(1809)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(11, SumMonoid(4296)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(29, SumMonoid(11131)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(11, SumMonoid(1554)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(11, SumMonoid(4296)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 277), items: [241, 245], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 277), items: [245], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [159, 185, 195, 201, 214, 221, 277, 286, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(159, true), (185, true), (195, true), (201, true), (214, true), (221, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 159, 185, 195, 201, 214, 221, 277, 286, 310, 325, 332, 343, 407]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 195, 201, 206, 214, 221, 224, 225, 241, 245, 277, 286, 303, 310, 316, 321, 325, 332, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 471, 492, 496, 504, 505, 536, 570, 573, 595, 605, 621, 634, 641, 676, 695, 702, 704, 709, 724, 757, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 869, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(30, SumMonoid(11386)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(12, SumMonoid(1809)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(11, SumMonoid(4296)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(4, SumMonoid(740)) }, Fingerprint { range: Range(214, 277), fp: EncodedCountingMonoid(4, SumMonoid(935)) }, Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(155, 206), items: [155, 184], want_response: true }, ItemSet { range: Range(206, 214), items: [206], want_response: true }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 206), items: [159, 185, 195, 201], want_response: false }, ItemSet { range: Range(206, 214), items: [], want_response: false }, ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(159, true), (185, true), (195, true), (201, true), (277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 195, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 159, 185, 195, 201, 277, 286, 310, 325, 332, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(29, SumMonoid(11191)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(11, SumMonoid(1614)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(11, SumMonoid(4296)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(4, SumMonoid(1198)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 321), items: [277, 286, 310], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [277, 286, 310, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(277, true), (286, true), (310, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 277, 286, 310, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 277, 286, 310, 325, 332, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 277, 286, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(28, SumMonoid(10881)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 277), fp: EncodedCountingMonoid(11, SumMonoid(1614)) }, Fingerprint { range: Range(277, 570), fp: EncodedCountingMonoid(10, SumMonoid(3986)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 277), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(277, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(277, 332), fp: EncodedCountingMonoid(3, SumMonoid(888)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(277, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 321), items: [277, 286], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [277, 286, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(277, true), (286, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 277, 286, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 277, 286, 325, 332, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(27, SumMonoid(10604)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(10, SumMonoid(1359)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(10, SumMonoid(3964)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(4, SumMonoid(2698)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 332), fp: EncodedCountingMonoid(3, SumMonoid(866)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [605, 641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (605, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [214, 221, 255, 286, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(214, true), (221, true), (255, true), (286, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 332, 343, 407, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 605, 641, 695, 757, 761, 869, 953, 214, 221, 255, 286, 325, 332, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 332, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(26, SumMonoid(9999)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(10, SumMonoid(1359)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(10, SumMonoid(3964)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(3, SumMonoid(2093)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 332), fp: EncodedCountingMonoid(3, SumMonoid(866)) }, Fingerprint { range: Range(332, 416), fp: EncodedCountingMonoid(3, SumMonoid(1082)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 332), items: [321], want_response: true }, ItemSet { range: Range(332, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 332), items: [325], want_response: false }, ItemSet { range: Range(332, 352), items: [332, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (471, true), (504, true), (505, true), (536, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [214, 221, 255, 286, 325, 332, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(214, true), (221, true), (255, true), (286, true), (325, true), (332, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 332, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953, 214, 221, 255, 286, 325, 332, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(25, SumMonoid(9667)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(10, SumMonoid(1359)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(9, SumMonoid(3632)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(3, SumMonoid(2093)) }, Fingerprint { range: Range(761, 954), fp: EncodedCountingMonoid(3, SumMonoid(2583)) }], item_sets: [], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }, Fingerprint { range: Range(761, 848), fp: EncodedCountingMonoid(9, SumMonoid(7232)) }, Fingerprint { range: Range(848, 954), fp: EncodedCountingMonoid(9, SumMonoid(8052)) }], item_sets: [], wants: [], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }, ItemSet { range: Range(761, 848), items: [761], want_response: true }, ItemSet { range: Range(848, 954), items: [869, 953], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 848), items: [771, 778, 780, 793, 794, 801, 834, 836, 845], want_response: false }, ItemSet { range: Range(848, 954), items: [848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 60, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 224, 225, 241, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (60, true), (343, true), (407, true), (471, true), (504, true), (505, true), (536, true), (641, true), (695, true), (757, true), (761, true), (869, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [214, 221, 255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(214, true), (221, true), (255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953} + [962, 983, 991, 45, 54, 84, 88, 93, 119, 147, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 224, 225, 241, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [5, 27, 42, 60, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 869, 953, 214, 221, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(24, SumMonoid(8798)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(10, SumMonoid(1359)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(9, SumMonoid(3632)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(3, SumMonoid(2093)) }], item_sets: [ItemSet { range: Range(761, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }], item_sets: [ItemSet { range: Range(761, 954), items: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 505), items: [471, 504], want_response: true }, ItemSet { range: Range(505, 570), items: [505, 536], want_response: true }, ItemSet { range: Range(570, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }], wants: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 505), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(505, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 60, 343, 407, 471, 504, 505, 536, 641, 695, 757], provide: [(771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }, ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 224, 225, 241, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (60, true), (343, true), (407, true), (471, true), (504, true), (505, true), (536, true), (641, true), (695, true), (757, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [214, 221, 255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(214, true), (221, true), (255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 471, 504, 505, 536, 641, 695, 757, 761, 953} + [962, 983, 991, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 224, 225, 241, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 27, 42, 60, 343, 407, 471, 504, 505, 536, 641, 695, 757, 214, 221, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 757, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(23, SumMonoid(8327)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 245), fp: EncodedCountingMonoid(9, SumMonoid(1114)) }, Fingerprint { range: Range(245, 570), fp: EncodedCountingMonoid(9, SumMonoid(3406)) }, Fingerprint { range: Range(570, 761), fp: EncodedCountingMonoid(3, SumMonoid(2093)) }], item_sets: [ItemSet { range: Range(761, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 245), fp: EncodedCountingMonoid(6, SumMonoid(1235)) }, Fingerprint { range: Range(245, 416), fp: EncodedCountingMonoid(8, SumMonoid(2595)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }, Fingerprint { range: Range(570, 676), fp: EncodedCountingMonoid(5, SumMonoid(2993)) }, Fingerprint { range: Range(676, 761), fp: EncodedCountingMonoid(5, SumMonoid(3515)) }], item_sets: [ItemSet { range: Range(761, 954), items: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(245, 325), fp: EncodedCountingMonoid(3, SumMonoid(786)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(3, SumMonoid(1075)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(214, 245), items: [214, 221], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }, ItemSet { range: Range(570, 676), items: [641], want_response: true }, ItemSet { range: Range(676, 761), items: [695, 757], want_response: true }], wants: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 245), items: [224, 225, 241], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(570, 676), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(676, 761), items: [676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(245, 316), items: [245, 303], want_response: true }, ItemSet { range: Range(316, 325), items: [316, 321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 214, 221, 504, 505, 536, 641, 695, 757], provide: [(771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(245, 316), items: [245, 255, 286], want_response: false }, ItemSet { range: Range(316, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (214, true), (221, true), (504, true), (505, true), (536, true), (641, true), (695, true), (757, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 757, 761, 953} + [962, 983, 991, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 27, 42, 60, 214, 221, 504, 505, 536, 641, 695, 757, 255, 286, 325, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(22, SumMonoid(7570)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 245), fp: EncodedCountingMonoid(9, SumMonoid(1114)) }, Fingerprint { range: Range(245, 570), fp: EncodedCountingMonoid(9, SumMonoid(3406)) }], item_sets: [ItemSet { range: Range(570, 761), items: [641, 695], want_response: true }, ItemSet { range: Range(761, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 245), fp: EncodedCountingMonoid(6, SumMonoid(1235)) }, Fingerprint { range: Range(245, 416), fp: EncodedCountingMonoid(8, SumMonoid(2595)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 761), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 954), items: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [641, 695, 761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(245, 325), fp: EncodedCountingMonoid(3, SumMonoid(786)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(3, SumMonoid(1075)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(214, 245), items: [214, 221], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(641, true), (695, true), (761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 245), items: [224, 225, 241], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(245, 316), items: [245, 303], want_response: true }, ItemSet { range: Range(316, 325), items: [316, 321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 214, 221, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(245, 316), items: [245, 255, 286], want_response: false }, ItemSet { range: Range(316, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (214, true), (221, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [641, 695, 761, 953, 5, 27, 42, 60, 214, 221, 504, 505, 536, 255, 286, 325, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 762), fp: EncodedCountingMonoid(21, SumMonoid(6617)) }], item_sets: [ItemSet { range: Range(762, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 352), fp: EncodedCountingMonoid(19, SumMonoid(3743)) }, Fingerprint { range: Range(352, 762), fp: EncodedCountingMonoid(19, SumMonoid(10420)) }], item_sets: [ItemSet { range: Range(762, 5), items: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 214), fp: EncodedCountingMonoid(7, SumMonoid(679)) }, Fingerprint { range: Range(214, 352), fp: EncodedCountingMonoid(7, SumMonoid(1889)) }, Fingerprint { range: Range(352, 641), fp: EncodedCountingMonoid(4, SumMonoid(1952)) }, Fingerprint { range: Range(641, 762), fp: EncodedCountingMonoid(3, SumMonoid(2097)) }], item_sets: [], wants: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 119), fp: EncodedCountingMonoid(5, SumMonoid(364)) }, Fingerprint { range: Range(119, 214), fp: EncodedCountingMonoid(5, SumMonoid(811)) }, Fingerprint { range: Range(214, 316), fp: EncodedCountingMonoid(5, SumMonoid(1238)) }, Fingerprint { range: Range(316, 352), fp: EncodedCountingMonoid(4, SumMonoid(1330)) }, Fingerprint { range: Range(352, 492), fp: EncodedCountingMonoid(7, SumMonoid(2924)) }, Fingerprint { range: Range(492, 641), fp: EncodedCountingMonoid(7, SumMonoid(3981)) }, Fingerprint { range: Range(641, 709), fp: EncodedCountingMonoid(3, SumMonoid(2082)) }], item_sets: [ItemSet { range: Range(709, 762), items: [709, 724], want_response: true }], wants: [], provide: [(771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true), (962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(214, 255), fp: EncodedCountingMonoid(3, SumMonoid(680)) }], item_sets: [ItemSet { range: Range(709, 762), items: [761], want_response: false }, ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 119), items: [42, 60], want_response: true }, ItemSet { range: Range(119, 201), items: [159, 185], want_response: true }, ItemSet { range: Range(201, 214), items: [201], want_response: true }, ItemSet { range: Range(255, 316), items: [255, 286], want_response: true }, ItemSet { range: Range(316, 352), items: [325, 343], want_response: true }, ItemSet { range: Range(352, 492), items: [407], want_response: true }, ItemSet { range: Range(492, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 641), items: [536], want_response: true }, ItemSet { range: Range(641, 709), items: [641, 695], want_response: true }], wants: [709, 724], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 119), items: [45, 54, 84, 88, 93], want_response: false }, ItemSet { range: Range(119, 201), items: [119, 147, 155, 184], want_response: false }, ItemSet { range: Range(201, 214), items: [206], want_response: false }, ItemSet { range: Range(255, 316), items: [303], want_response: false }, ItemSet { range: Range(316, 352), items: [316, 321, 346, 347], want_response: false }, ItemSet { range: Range(352, 492), items: [352, 365, 416, 435, 439, 453, 464], want_response: false }, ItemSet { range: Range(492, 536), items: [492, 496], want_response: false }, ItemSet { range: Range(536, 641), items: [570, 573, 595, 621, 634], want_response: false }, ItemSet { range: Range(641, 709), items: [676, 702, 704], want_response: false }, ItemSet { range: Range(214, 241), items: [224, 225], want_response: true }, ItemSet { range: Range(241, 255), items: [241, 245], want_response: true }], wants: [761, 5, 27, 42, 60, 159, 185, 201, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695], provide: [(709, true), (724, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(214, 241), items: [214, 221], want_response: false }, ItemSet { range: Range(241, 255), items: [245], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 224, 225, 241], provide: [(761, true), (5, true), (27, true), (42, true), (60, true), (159, true), (185, true), (201, true), (255, true), (286, true), (325, true), (343, true), (407, true), (504, true), (505, true), (536, true), (641, true), (695, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [214, 221], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (155, true), (184, true), (206, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (224, true), (225, true), (241, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(214, true), (221, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761} + [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991, 709, 724, 45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 224, 225, 241]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 5, 27, 42, 60, 159, 185, 201, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 214, 221]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 201, 206, 214, 221, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 504, 505, 536, 570, 573, 595, 621, 634, 641, 676, 695, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 201, 206, 214, 221, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 504, 505, 536, 570, 573, 595, 621, 634, 641, 676, 695, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 159, 184, 185, 201, 206, 214, 221, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 504, 505, 536, 570, 573, 595, 621, 634, 641, 676, 695, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(22, SumMonoid(7570)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 245), fp: EncodedCountingMonoid(9, SumMonoid(1114)) }, Fingerprint { range: Range(245, 570), fp: EncodedCountingMonoid(9, SumMonoid(3406)) }], item_sets: [ItemSet { range: Range(570, 761), items: [641, 695], want_response: true }, ItemSet { range: Range(761, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 245), fp: EncodedCountingMonoid(6, SumMonoid(1235)) }, Fingerprint { range: Range(245, 416), fp: EncodedCountingMonoid(8, SumMonoid(2595)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 761), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 954), items: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [641, 695, 761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(245, 325), fp: EncodedCountingMonoid(3, SumMonoid(786)) }, Fingerprint { range: Range(325, 416), fp: EncodedCountingMonoid(3, SumMonoid(1075)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(214, 245), items: [214, 221], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(641, true), (695, true), (761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 245), items: [224, 225, 241], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(245, 316), items: [245, 303], want_response: true }, ItemSet { range: Range(316, 325), items: [316, 321], want_response: true }, ItemSet { range: Range(325, 352), items: [346, 347], want_response: true }, ItemSet { range: Range(352, 416), items: [352, 365], want_response: true }], wants: [5, 27, 42, 60, 214, 221, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(245, 316), items: [245, 255, 286], want_response: false }, ItemSet { range: Range(316, 325), items: [], want_response: false }, ItemSet { range: Range(325, 352), items: [325, 343], want_response: false }, ItemSet { range: Range(352, 416), items: [407], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321, 346, 347, 352, 365], provide: [(5, true), (27, true), (42, true), (60, true), (214, true), (221, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325, 343, 407], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true), (343, true), (407, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 221, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321, 346, 347, 352, 365]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [641, 695, 761, 953, 5, 27, 42, 60, 214, 221, 504, 505, 536, 255, 286, 325, 343, 407]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(21, SumMonoid(7349)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(9, SumMonoid(1138)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(8, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(570, 761), items: [641, 695], want_response: true }, ItemSet { range: Range(761, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 761), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724], want_response: false }, ItemSet { range: Range(761, 954), items: [771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [641, 695, 761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(641, true), (695, true), (761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 60, 214, 343, 407, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (60, true), (214, true), (343, true), (407, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 641, 695, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [641, 695, 761, 953, 5, 27, 42, 60, 214, 343, 407, 504, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 695, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(20, SumMonoid(6708)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(9, SumMonoid(1138)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(8, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(570, 953), items: [695, 761], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 953), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }], wants: [695, 761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(695, true), (761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 60, 214, 343, 407, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (60, true), (214, true), (343, true), (407, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 695, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [695, 761, 953, 5, 27, 42, 60, 214, 343, 407, 504, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 695, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(19, SumMonoid(6549)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(8, SumMonoid(979)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(8, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(570, 953), items: [695, 761], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 953), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }], wants: [695, 761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(155, 214), items: [185, 201], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(695, true), (761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(155, 214), items: [155, 184, 206], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 60, 185, 201, 214, 343, 407, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (60, true), (185, true), (201, true), (214, true), (343, true), (407, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (155, true), (184, true), (206, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 695, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [695, 761, 953, 5, 27, 42, 60, 185, 201, 214, 343, 407, 504, 505, 536, 255, 286, 325]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 184, 185, 201, 206, 214, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 504, 505, 536, 570, 573, 595, 621, 634, 676, 695, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 184, 185, 201, 206, 214, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 504, 505, 536, 570, 573, 595, 621, 634, 676, 695, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 27, 42, 45, 54, 60, 84, 88, 93, 119, 147, 155, 184, 185, 201, 206, 214, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 504, 505, 536, 570, 573, 595, 621, 634, 676, 695, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 695, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(20, SumMonoid(6708)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(9, SumMonoid(1138)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(8, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(570, 953), items: [695, 761], want_response: true }, ItemSet { range: Range(953, 954), items: [953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 953), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }, ItemSet { range: Range(953, 954), items: [], want_response: false }], wants: [695, 761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(695, true), (761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 60, 214, 343, 407, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (60, true), (214, true), (343, true), (407, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 695, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [695, 761, 953, 5, 27, 42, 60, 214, 343, 407, 504, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(19, SumMonoid(6013)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(9, SumMonoid(1138)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(8, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42, 60], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 60, 214, 343, 407, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (60, true), (214, true), (343, true), (407, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 60, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 27, 42, 60, 214, 343, 407, 504, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(18, SumMonoid(5953)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(8, SumMonoid(1078)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(8, SumMonoid(3161)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 536), items: [504, 505], want_response: true }, ItemSet { range: Range(536, 570), items: [536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 536), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(536, 570), items: [], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 214, 343, 407, 504, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (214, true), (343, true), (407, true), (504, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 504, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 27, 42, 214, 343, 407, 504, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 27, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(17, SumMonoid(5449)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(8, SumMonoid(1078)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(7, SumMonoid(2657)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 42), items: [5, 27], want_response: true }, ItemSet { range: Range(42, 155), items: [42], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 570), items: [505, 536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 42), items: [], want_response: false }, ItemSet { range: Range(42, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 570), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 27, 42, 214, 343, 407, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (27, true), (42, true), (214, true), (343, true), (407, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 27, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 27, 42, 214, 343, 407, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(16, SumMonoid(5422)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(7, SumMonoid(1051)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(7, SumMonoid(2657)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 155), items: [5, 42], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 570), items: [505, 536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 570), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 42, 214, 343, 407, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (42, true), (214, true), (343, true), (407, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 42, 214, 343, 407, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 42, 159, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(15, SumMonoid(5237)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 286), fp: EncodedCountingMonoid(7, SumMonoid(1121)) }, Fingerprint { range: Range(286, 570), fp: EncodedCountingMonoid(6, SumMonoid(2402)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 286), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(286, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 245), fp: EncodedCountingMonoid(3, SumMonoid(574)) }], item_sets: [ItemSet { range: Range(5, 155), items: [5, 42], want_response: true }, ItemSet { range: Range(245, 286), items: [245, 255], want_response: true }, ItemSet { range: Range(286, 343), items: [286, 325], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 570), items: [505, 536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(155, 224), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(224, 245), fp: EncodedCountingMonoid(3, SumMonoid(690)) }], item_sets: [ItemSet { range: Range(5, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(245, 286), items: [245], want_response: false }, ItemSet { range: Range(286, 343), items: [303, 316, 321], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 570), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }], wants: [5, 42, 255, 286, 325, 343, 407, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 214), items: [159, 201], want_response: true }, ItemSet { range: Range(214, 224), items: [214], want_response: true }, ItemSet { range: Range(224, 245), items: [], want_response: true }], wants: [45, 54, 84, 88, 93, 119, 147, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (42, true), (255, true), (286, true), (325, true), (343, true), (407, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(155, 214), items: [155, 184, 206], want_response: false }, ItemSet { range: Range(214, 224), items: [], want_response: false }, ItemSet { range: Range(224, 245), items: [224, 225, 241], want_response: false }], wants: [159, 201, 214], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [155, 184, 206, 224, 225, 241], provide: [(159, true), (201, true), (214, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(155, true), (184, true), (206, true), (224, true), (225, true), (241, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 42, 159, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 155, 184, 206, 224, 225, 241]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 42, 255, 286, 325, 343, 407, 505, 536, 159, 201, 214]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 42, 45, 54, 84, 88, 93, 119, 147, 155, 159, 184, 201, 206, 214, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 505, 536, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 42, 45, 54, 84, 88, 93, 119, 147, 155, 159, 184, 201, 206, 214, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 505, 536, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 42, 45, 54, 84, 88, 93, 119, 147, 155, 159, 184, 201, 206, 214, 224, 225, 241, 245, 255, 286, 303, 316, 321, 325, 343, 346, 347, 352, 365, 407, 416, 435, 439, 453, 464, 492, 496, 505, 536, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 761, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 953, 962, 983, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(16, SumMonoid(5422)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(7, SumMonoid(1051)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(7, SumMonoid(2657)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }, Fingerprint { range: Range(255, 343), fp: EncodedCountingMonoid(3, SumMonoid(866)) }], item_sets: [ItemSet { range: Range(5, 155), items: [5, 42], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 570), items: [505, 536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 570), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }, ItemSet { range: Range(255, 321), items: [303, 316], want_response: true }, ItemSet { range: Range(321, 343), items: [321], want_response: true }], wants: [5, 42, 214, 343, 407, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(255, 321), items: [255, 286], want_response: false }, ItemSet { range: Range(321, 343), items: [325], want_response: false }], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321], provide: [(5, true), (42, true), (214, true), (343, true), (407, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [255, 286, 325], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true), (303, true), (316, true), (321, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(255, true), (286, true), (325, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 42, 159, 185, 201, 214, 245, 255, 286, 325, 343, 407, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 303, 316, 321]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 42, 214, 343, 407, 505, 536, 255, 286, 325]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 42, 159, 185, 201, 214, 245, 255, 286, 343, 407, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(15, SumMonoid(5097)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(7, SumMonoid(1051)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(6, SumMonoid(2332)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }], item_sets: [ItemSet { range: Range(5, 155), items: [5, 42], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(255, 343), items: [255, 286], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 570), items: [505, 536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(255, 343), items: [303, 316, 321], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 570), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }], wants: [5, 42, 214, 255, 286, 343, 407, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (42, true), (214, true), (255, true), (286, true), (343, true), (407, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 42, 159, 185, 201, 214, 245, 255, 286, 343, 407, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 42, 214, 255, 286, 343, 407, 505, 536]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 159, 185, 201, 214, 245, 255, 286, 343, 407, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(14, SumMonoid(5055)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(6, SumMonoid(1009)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(6, SumMonoid(2332)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }], item_sets: [ItemSet { range: Range(5, 155), items: [5], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(255, 343), items: [255, 286], want_response: true }, ItemSet { range: Range(343, 416), items: [343, 407], want_response: true }, ItemSet { range: Range(416, 570), items: [505, 536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(255, 343), items: [303, 316, 321], want_response: false }, ItemSet { range: Range(343, 416), items: [346, 347, 352, 365], want_response: false }, ItemSet { range: Range(416, 570), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }], wants: [5, 214, 255, 286, 343, 407, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (214, true), (255, true), (286, true), (343, true), (407, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 159, 185, 201, 214, 245, 255, 286, 343, 407, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 214, 255, 286, 343, 407, 505, 536]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 159, 185, 201, 214, 245, 255, 286, 407, 505, 536, 761, 953}
[INFO] [stdout] b items: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 954), fp: EncodedCountingMonoid(13, SumMonoid(4712)) }], item_sets: [ItemSet { range: Range(954, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 570), fp: EncodedCountingMonoid(28, SumMonoid(7655)) }, Fingerprint { range: Range(570, 954), fp: EncodedCountingMonoid(28, SumMonoid(21792)) }], item_sets: [ItemSet { range: Range(954, 5), items: [962, 983, 991], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 255), fp: EncodedCountingMonoid(6, SumMonoid(1009)) }, Fingerprint { range: Range(255, 570), fp: EncodedCountingMonoid(5, SumMonoid(1989)) }], item_sets: [ItemSet { range: Range(570, 954), items: [761, 953], want_response: true }], wants: [962, 983, 991], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 155), fp: EncodedCountingMonoid(7, SumMonoid(630)) }, Fingerprint { range: Range(155, 255), fp: EncodedCountingMonoid(7, SumMonoid(1480)) }, Fingerprint { range: Range(255, 416), fp: EncodedCountingMonoid(7, SumMonoid(2350)) }, Fingerprint { range: Range(416, 570), fp: EncodedCountingMonoid(7, SumMonoid(3195)) }], item_sets: [ItemSet { range: Range(570, 954), items: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], want_response: false }], wants: [761, 953], provide: [(962, true), (983, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(155, 214), fp: EncodedCountingMonoid(3, SumMonoid(545)) }], item_sets: [ItemSet { range: Range(5, 155), items: [5], want_response: true }, ItemSet { range: Range(214, 255), items: [214, 245], want_response: true }, ItemSet { range: Range(255, 407), items: [255, 286], want_response: true }, ItemSet { range: Range(407, 416), items: [407], want_response: true }, ItemSet { range: Range(416, 570), items: [505, 536], want_response: true }], wants: [570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938], provide: [(761, true), (953, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 155), items: [45, 54, 84, 88, 93, 119, 147], want_response: false }, ItemSet { range: Range(214, 255), items: [224, 225, 241, 245], want_response: false }, ItemSet { range: Range(255, 407), items: [303, 316, 321, 346, 347, 352, 365], want_response: false }, ItemSet { range: Range(407, 416), items: [], want_response: false }, ItemSet { range: Range(416, 570), items: [416, 435, 439, 453, 464, 492, 496], want_response: false }], wants: [5, 214, 255, 286, 407, 505, 536], provide: [(570, true), (573, true), (595, true), (621, true), (634, true), (676, true), (702, true), (704, true), (709, true), (724, true), (771, true), (778, true), (780, true), (793, true), (794, true), (801, true), (834, true), (836, true), (845, true), (848, true), (860, true), (882, true), (888, true), (891, true), (899, true), (917, true), (929, true), (938, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496], provide: [(5, true), (214, true), (255, true), (286, true), (407, true), (505, true), (536, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(45, true), (54, true), (84, true), (88, true), (93, true), (119, true), (147, true), (224, true), (225, true), (241, true), (303, true), (316, true), (321, true), (346, true), (347, true), (352, true), (365, true), (416, true), (435, true), (439, true), (453, true), (464, true), (492, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 159, 185, 201, 214, 245, 255, 286, 407, 505, 536, 761, 953} + [962, 983, 991, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 45, 54, 84, 88, 93, 119, 147, 224, 225, 241, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496]
[INFO] [stdout] b all: {45, 54, 84, 88, 93, 119, 147, 155, 184, 206, 224, 225, 241, 245, 303, 316, 321, 346, 347, 352, 365, 416, 435, 439, 453, 464, 492, 496, 570, 573, 595, 621, 634, 676, 702, 704, 709, 724, 771, 778, 780, 793, 794, 801, 834, 836, 845, 848, 860, 882, 888, 891, 899, 917, 929, 938, 962, 983, 991} + [761, 953, 5, 214, 255, 286, 407, 505, 536]
[INFO] [stdout] ---test run---
[WARN] too many lines in the log, truncating it
