[INFO] fetching crate unionize 0.3.0...
[INFO] testing unionize-0.3.0 against beta-2024-12-08 for beta-1.84.0-4-retry
[INFO] extracting crate unionize 0.3.0 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate unionize 0.3.0 on toolchain beta-2024-12-08
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "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-5-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-12-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dbec259bd2394fa65288d8557ccecd7188bfc7b7a87714d764e44e26c880cd98
[INFO] running `Command { std: "docker" "start" "-a" "dbec259bd2394fa65288d8557ccecd7188bfc7b7a87714d764e44e26c880cd98", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dbec259bd2394fa65288d8557ccecd7188bfc7b7a87714d764e44e26c880cd98", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dbec259bd2394fa65288d8557ccecd7188bfc7b7a87714d764e44e26c880cd98", kill_on_drop: false }`
[INFO] [stdout] dbec259bd2394fa65288d8557ccecd7188bfc7b7a87714d764e44e26c880cd98
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e5528fb4799c6a3197c6ecb366998e2b4c3f75fb687ecab3f1b280e8d898fb23
[INFO] running `Command { std: "docker" "start" "-a" "e5528fb4799c6a3197c6ecb366998e2b4c3f75fb687ecab3f1b280e8d898fb23", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.141
[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 minimal-lexical v0.2.1
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling bindgen v0.65.1
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling rustix v0.37.11
[INFO] [stderr]    Compiling shlex v1.1.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling libm v0.2.6
[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 rustc_version v0.2.3
[INFO] [stderr]    Compiling clang-sys v1.6.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling syn v2.0.16
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling procinfo v0.4.2
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling nom v2.2.1
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling cpufeatures v0.2.7
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling sise v0.8.0
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling digest v0.10.6
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling sha2 v0.10.6
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling proptest v1.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.164
[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]    = help: consider removing this field
[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] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 45.89s
[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" "e5528fb4799c6a3197c6ecb366998e2b4c3f75fb687ecab3f1b280e8d898fb23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5528fb4799c6a3197c6ecb366998e2b4c3f75fb687ecab3f1b280e8d898fb23", kill_on_drop: false }`
[INFO] [stdout] e5528fb4799c6a3197c6ecb366998e2b4c3f75fb687ecab3f1b280e8d898fb23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 06cc5749d3bc87b3189e33e2ef0cd572928629c0ff2f281e2deba63aee578658
[INFO] running `Command { std: "docker" "start" "-a" "06cc5749d3bc87b3189e33e2ef0cd572928629c0ff2f281e2deba63aee578658", kill_on_drop: false }`
[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]    = help: consider removing this field
[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] 
[INFO] [stdout] 
[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]    = help: consider removing this field
[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] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.81s
[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" "06cc5749d3bc87b3189e33e2ef0cd572928629c0ff2f281e2deba63aee578658", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "06cc5749d3bc87b3189e33e2ef0cd572928629c0ff2f281e2deba63aee578658", kill_on_drop: false }`
[INFO] [stdout] 06cc5749d3bc87b3189e33e2ef0cd572928629c0ff2f281e2deba63aee578658
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3834608984fcfa4ef67f32151f76859a2f7a2ea9cab1dba1b9fa89c117d06118
[INFO] running `Command { std: "docker" "start" "-a" "3834608984fcfa4ef67f32151f76859a2f7a2ea9cab1dba1b9fa89c117d06118", 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]    = help: consider removing this field
[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] 
[INFO] [stderr] warning: `unionize` (lib) generated 1 warning
[INFO] [stderr] warning: `unionize` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr]     Finished `test` profile [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-094d4403a5718680)
[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 item::le_byte_array::tests::serialize_correctness ... ok
[INFO] [stdout] test monoid::mulhash_xs233::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_stream ... ok
[INFO] [stdout] test protocol::tests::serialize_correctness ... ok
[INFO] [stdout] test protocol::tests::protocol_correctness ... FAILED
[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: {14, 17, 38, 68, 95, 109, 113, 128, 188, 219, 228, 259, 273, 282, 291, 308, 318, 339, 370, 401, 414, 454, 478, 529, 547, 602, 608, 626, 636, 650, 658, 659, 666, 709, 722, 730, 749, 771, 822, 836, 855, 864, 895, 930, 932, 950, 955, 956, 975, 993}
[INFO] [stdout] b items: {4, 14, 27, 33, 37, 61, 86, 87, 126, 137, 138, 151, 184, 190, 242, 243, 252, 269, 282, 304, 320, 326, 339, 345, 355, 374, 377, 385, 395, 400, 438, 443, 444, 449, 453, 455, 479, 482, 494, 495, 505, 507, 509, 539, 540, 551, 562, 577, 578, 580, 625, 632, 664, 711, 731, 749, 775, 776, 779, 789, 815, 819, 825, 833, 844, 846, 860, 863, 864, 869, 873, 883, 895, 902, 928, 932, 933, 934, 939, 964, 974, 986}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 994), fp: EncodedCountingMonoid(50, SumMonoid(26229)) }], item_sets: [ItemSet { range: Range(994, 14), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 509), fp: EncodedCountingMonoid(41, SumMonoid(12123)) }, Fingerprint { range: Range(509, 994), fp: EncodedCountingMonoid(40, SumMonoid(31248)) }], item_sets: [ItemSet { range: Range(994, 14), items: [4], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 273), fp: EncodedCountingMonoid(12, SumMonoid(1476)) }, Fingerprint { range: Range(273, 509), fp: EncodedCountingMonoid(11, SumMonoid(3928)) }, Fingerprint { range: Range(509, 771), fp: EncodedCountingMonoid(14, SumMonoid(9091)) }, Fingerprint { range: Range(771, 994), fp: EncodedCountingMonoid(13, SumMonoid(11734)) }], item_sets: [], wants: [4], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 138), fp: EncodedCountingMonoid(9, SumMonoid(608)) }, Fingerprint { range: Range(138, 273), fp: EncodedCountingMonoid(8, SumMonoid(1669)) }, Fingerprint { range: Range(273, 438), fp: EncodedCountingMonoid(12, SumMonoid(4202)) }, Fingerprint { range: Range(438, 509), fp: EncodedCountingMonoid(12, SumMonoid(5644)) }, Fingerprint { range: Range(509, 580), fp: EncodedCountingMonoid(7, SumMonoid(3856)) }, Fingerprint { range: Range(580, 771), fp: EncodedCountingMonoid(7, SumMonoid(4692)) }, Fingerprint { range: Range(771, 869), fp: EncodedCountingMonoid(13, SumMonoid(10688)) }, Fingerprint { range: Range(869, 994), fp: EncodedCountingMonoid(13, SumMonoid(12012)) }], item_sets: [], wants: [], provide: [(4, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 95), fp: EncodedCountingMonoid(4, SumMonoid(137)) }, Fingerprint { range: Range(95, 138), fp: EncodedCountingMonoid(4, SumMonoid(445)) }, Fingerprint { range: Range(273, 339), fp: EncodedCountingMonoid(5, SumMonoid(1472)) }, Fingerprint { range: Range(339, 438), fp: EncodedCountingMonoid(4, SumMonoid(1524)) }, Fingerprint { range: Range(580, 659), fp: EncodedCountingMonoid(6, SumMonoid(3780)) }, Fingerprint { range: Range(659, 771), fp: EncodedCountingMonoid(6, SumMonoid(4235)) }, Fingerprint { range: Range(771, 855), fp: EncodedCountingMonoid(3, SumMonoid(2429)) }, Fingerprint { range: Range(869, 955), fp: EncodedCountingMonoid(4, SumMonoid(3707)) }, Fingerprint { range: Range(955, 994), fp: EncodedCountingMonoid(4, SumMonoid(3879)) }], item_sets: [ItemSet { range: Range(138, 228), items: [188, 219], want_response: true }, ItemSet { range: Range(228, 273), items: [228, 259], want_response: true }, ItemSet { range: Range(438, 509), items: [454, 478], want_response: true }, ItemSet { range: Range(509, 580), items: [529, 547], want_response: true }, ItemSet { range: Range(855, 869), items: [855, 864], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 61), fp: EncodedCountingMonoid(4, SumMonoid(111)) }, Fingerprint { range: Range(61, 95), fp: EncodedCountingMonoid(3, SumMonoid(234)) }, Fingerprint { range: Range(339, 377), fp: EncodedCountingMonoid(4, SumMonoid(1413)) }, Fingerprint { range: Range(377, 438), fp: EncodedCountingMonoid(4, SumMonoid(1557)) }, Fingerprint { range: Range(771, 819), fp: EncodedCountingMonoid(5, SumMonoid(3934)) }, Fingerprint { range: Range(819, 855), fp: EncodedCountingMonoid(5, SumMonoid(4167)) }, Fingerprint { range: Range(869, 928), fp: EncodedCountingMonoid(5, SumMonoid(4422)) }, Fingerprint { range: Range(928, 955), fp: EncodedCountingMonoid(5, SumMonoid(4666)) }], item_sets: [ItemSet { range: Range(138, 228), items: [138, 151, 184, 190], want_response: false }, ItemSet { range: Range(228, 273), items: [242, 243, 252, 269], want_response: false }, ItemSet { range: Range(438, 509), items: [438, 443, 444, 449, 453, 455, 479, 482, 494, 495, 505, 507], want_response: false }, ItemSet { range: Range(509, 580), items: [509, 539, 540, 551, 562, 577, 578], want_response: false }, ItemSet { range: Range(855, 869), items: [860, 863, 864], want_response: false }, ItemSet { range: Range(95, 138), items: [126, 137], want_response: true }, ItemSet { range: Range(273, 320), items: [282, 304], want_response: true }, ItemSet { range: Range(320, 339), items: [320, 326], want_response: true }, ItemSet { range: Range(580, 632), items: [580, 625], want_response: true }, ItemSet { range: Range(632, 659), items: [632], want_response: true }, ItemSet { range: Range(659, 731), items: [664, 711], want_response: true }, ItemSet { range: Range(731, 771), items: [731, 749], want_response: true }, ItemSet { range: Range(955, 986), items: [964, 974], want_response: true }, ItemSet { range: Range(986, 994), items: [986], want_response: true }], wants: [188, 219, 228, 259, 454, 478, 529, 547, 855], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(95, 138), items: [95, 109, 113, 128], want_response: false }, ItemSet { range: Range(273, 320), items: [273, 282, 291, 308, 318], want_response: false }, ItemSet { range: Range(320, 339), items: [], want_response: false }, ItemSet { range: Range(580, 632), items: [602, 608, 626], want_response: false }, ItemSet { range: Range(632, 659), items: [636, 650, 658], want_response: false }, ItemSet { range: Range(659, 731), items: [659, 666, 709, 722, 730], want_response: false }, ItemSet { range: Range(731, 771), items: [749], want_response: false }, ItemSet { range: Range(955, 986), items: [955, 956, 975], want_response: false }, ItemSet { range: Range(986, 994), items: [993], want_response: false }, ItemSet { range: Range(14, 38), items: [14, 17], want_response: true }, ItemSet { range: Range(38, 61), items: [38], want_response: true }, ItemSet { range: Range(61, 95), items: [68], want_response: true }, ItemSet { range: Range(339, 377), items: [339, 370], want_response: true }, ItemSet { range: Range(377, 438), items: [401, 414], want_response: true }, ItemSet { range: Range(771, 819), items: [771], want_response: true }, ItemSet { range: Range(819, 855), items: [822, 836], want_response: true }, ItemSet { range: Range(869, 928), items: [895], want_response: true }, ItemSet { range: Range(928, 950), items: [930, 932], want_response: true }, ItemSet { range: Range(950, 955), items: [950], want_response: true }], wants: [138, 151, 184, 190, 242, 243, 252, 269, 438, 443, 444, 449, 453, 455, 479, 482, 494, 495, 505, 507, 509, 539, 540, 551, 562, 577, 578, 860, 863, 126, 137, 304, 320, 326, 580, 625, 632, 664, 711, 731, 964, 974, 986], provide: [(188, true), (219, true), (228, true), (259, true), (454, true), (478, true), (529, true), (547, true), (855, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(14, 38), items: [14, 27, 33, 37], want_response: false }, ItemSet { range: Range(38, 61), items: [], want_response: false }, ItemSet { range: Range(61, 95), items: [61, 86, 87], want_response: false }, ItemSet { range: Range(339, 377), items: [339, 345, 355, 374], want_response: false }, ItemSet { range: Range(377, 438), items: [377, 385, 395, 400], want_response: false }, ItemSet { range: Range(771, 819), items: [775, 776, 779, 789, 815], want_response: false }, ItemSet { range: Range(819, 855), items: [819, 825, 833, 844, 846], want_response: false }, ItemSet { range: Range(869, 928), items: [869, 873, 883, 895, 902], want_response: false }, ItemSet { range: Range(928, 950), items: [928, 932, 933, 934, 939], want_response: false }, ItemSet { range: Range(950, 955), items: [], want_response: false }], wants: [95, 109, 113, 128, 273, 291, 308, 318, 602, 608, 626, 636, 650, 658, 659, 666, 709, 722, 730, 955, 956, 975, 993, 17, 38, 68, 370, 401, 414, 771, 822, 836, 930, 950], provide: [(138, true), (151, true), (184, true), (190, true), (242, true), (243, true), (252, true), (269, true), (438, true), (443, true), (444, true), (449, true), (453, true), (455, true), (479, true), (482, true), (494, true), (495, true), (505, true), (507, true), (509, true), (539, true), (540, true), (551, true), (562, true), (577, true), (578, true), (860, true), (863, true), (126, true), (137, true), (304, true), (320, true), (326, true), (580, true), (625, true), (632, true), (664, true), (711, true), (731, true), (964, true), (974, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [27, 33, 37, 61, 86, 87, 345, 355, 374, 377, 385, 395, 400, 775, 776, 779, 789, 815, 819, 825, 833, 844, 846, 869, 873, 883, 902, 928, 933, 934, 939], provide: [(95, true), (109, true), (113, true), (128, true), (273, true), (291, true), (308, true), (318, true), (602, true), (608, true), (626, true), (636, true), (650, true), (658, true), (659, true), (666, true), (709, true), (722, true), (730, true), (955, true), (956, true), (975, true), (993, true), (17, true), (38, true), (68, true), (370, true), (401, true), (414, true), (771, true), (822, true), (836, true), (930, true), (950, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(27, true), (33, true), (37, true), (61, true), (86, true), (87, true), (345, true), (355, true), (374, true), (377, true), (385, true), (395, true), (400, true), (775, true), (776, true), (779, true), (789, true), (815, true), (819, true), (825, true), (833, true), (844, true), (846, true), (869, true), (873, true), (883, true), (902, true), (928, true), (933, true), (934, true), (939, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {14, 17, 38, 68, 95, 109, 113, 128, 188, 219, 228, 259, 273, 282, 291, 308, 318, 339, 370, 401, 414, 454, 478, 529, 547, 602, 608, 626, 636, 650, 658, 659, 666, 709, 722, 730, 749, 771, 822, 836, 855, 864, 895, 930, 932, 950, 955, 956, 975, 993} + [4, 138, 151, 184, 190, 242, 243, 252, 269, 438, 443, 444, 449, 453, 455, 479, 482, 494, 495, 505, 507, 509, 539, 540, 551, 562, 577, 578, 860, 863, 126, 137, 304, 320, 326, 580, 625, 632, 664, 711, 731, 964, 974, 986, 27, 33, 37, 61, 86, 87, 345, 355, 374, 377, 385, 395, 400, 775, 776, 779, 789, 815, 819, 825, 833, 844, 846, 869, 873, 883, 902, 928, 933, 934, 939]
[INFO] [stdout] b all: {4, 14, 27, 33, 37, 61, 86, 87, 126, 137, 138, 151, 184, 190, 242, 243, 252, 269, 282, 304, 320, 326, 339, 345, 355, 374, 377, 385, 395, 400, 438, 443, 444, 449, 453, 455, 479, 482, 494, 495, 505, 507, 509, 539, 540, 551, 562, 577, 578, 580, 625, 632, 664, 711, 731, 749, 775, 776, 779, 789, 815, 819, 825, 833, 844, 846, 860, 863, 864, 869, 873, 883, 895, 902, 928, 932, 933, 934, 939, 964, 974, 986} + [188, 219, 228, 259, 454, 478, 529, 547, 855, 95, 109, 113, 128, 273, 291, 308, 318, 602, 608, 626, 636, 650, 658, 659, 666, 709, 722, 730, 955, 956, 975, 993, 17, 38, 68, 370, 401, 414, 771, 822, 836, 930, 950]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 14, 17, 27, 33, 37, 38, 61, 68, 86, 87, 95, 109, 113, 126, 128, 137, 138, 151, 184, 188, 190, 219, 228, 242, 243, 252, 259, 269, 273, 282, 291, 304, 308, 318, 320, 326, 339, 345, 355, 370, 374, 377, 385, 395, 400, 401, 414, 438, 443, 444, 449, 453, 454, 455, 478, 479, 482, 494, 495, 505, 507, 509, 529, 539, 540, 547, 551, 562, 577, 578, 580, 602, 608, 625, 626, 632, 636, 650, 658, 659, 664, 666, 709, 711, 722, 730, 731, 749, 771, 775, 776, 779, 789, 815, 819, 822, 825, 833, 836, 844, 846, 855, 860, 863, 864, 869, 873, 883, 895, 902, 928, 930, 932, 933, 934, 939, 950, 955, 956, 964, 974, 975, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 14, 17, 27, 33, 37, 38, 61, 68, 86, 87, 95, 109, 113, 126, 128, 137, 138, 151, 184, 188, 190, 219, 228, 242, 243, 252, 259, 269, 273, 282, 291, 304, 308, 318, 320, 326, 339, 345, 355, 370, 374, 377, 385, 395, 400, 401, 414, 438, 443, 444, 449, 453, 454, 455, 478, 479, 482, 494, 495, 505, 507, 509, 529, 539, 540, 547, 551, 562, 577, 578, 580, 602, 608, 625, 626, 632, 636, 650, 658, 659, 664, 666, 709, 711, 722, 730, 731, 749, 771, 775, 776, 779, 789, 815, 819, 822, 825, 833, 836, 844, 846, 855, 860, 863, 864, 869, 873, 883, 895, 902, 928, 930, 932, 933, 934, 939, 950, 955, 956, 964, 974, 975, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 14, 17, 27, 33, 37, 38, 61, 68, 86, 87, 95, 109, 113, 126, 128, 137, 138, 151, 184, 188, 190, 219, 228, 242, 243, 252, 259, 269, 273, 282, 291, 304, 308, 318, 320, 326, 339, 345, 355, 370, 374, 377, 385, 395, 400, 401, 414, 438, 443, 444, 449, 453, 454, 455, 478, 479, 482, 494, 495, 505, 507, 509, 529, 539, 540, 547, 551, 562, 577, 578, 580, 602, 608, 625, 626, 632, 636, 650, 658, 659, 664, 666, 709, 711, 722, 730, 731, 749, 771, 775, 776, 779, 789, 815, 819, 822, 825, 833, 836, 844, 846, 855, 860, 863, 864, 869, 873, 883, 895, 902, 928, 930, 932, 933, 934, 939, 950, 955, 956, 964, 974, 975, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {14, 20, 56, 104, 170, 176, 251, 279, 289, 308, 313, 346, 361, 393, 417, 475, 517, 543, 559, 641, 656, 672, 768, 784, 827, 829, 909, 918, 927, 976, 990}
[INFO] [stdout] b items: {11, 13, 29, 31, 32, 65, 73, 74, 94, 133, 135, 152, 168, 169, 174, 198, 201, 206, 230, 284, 297, 309, 313, 336, 357, 361, 362, 376, 379, 383, 390, 406, 425, 482, 537, 540, 544, 556, 599, 617, 637, 655, 661, 681, 694, 705, 716, 731, 754, 759, 790, 862, 869, 909, 929, 945, 987, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 991), fp: EncodedCountingMonoid(31, SumMonoid(15488)) }], item_sets: [ItemSet { range: Range(991, 14), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 390), fp: EncodedCountingMonoid(28, SumMonoid(5921)) }, Fingerprint { range: Range(390, 991), fp: EncodedCountingMonoid(27, SumMonoid(18380)) }], item_sets: [ItemSet { range: Range(991, 14), items: [999, 11, 13], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 279), fp: EncodedCountingMonoid(7, SumMonoid(791)) }, Fingerprint { range: Range(279, 390), fp: EncodedCountingMonoid(6, SumMonoid(1896)) }, Fingerprint { range: Range(390, 768), fp: EncodedCountingMonoid(9, SumMonoid(4873)) }, Fingerprint { range: Range(768, 991), fp: EncodedCountingMonoid(9, SumMonoid(7928)) }], item_sets: [], wants: [999, 11, 13], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 152), fp: EncodedCountingMonoid(9, SumMonoid(666)) }, Fingerprint { range: Range(152, 279), fp: EncodedCountingMonoid(8, SumMonoid(1498)) }, Fingerprint { range: Range(279, 361), fp: EncodedCountingMonoid(6, SumMonoid(1896)) }, Fingerprint { range: Range(361, 390), fp: EncodedCountingMonoid(5, SumMonoid(1861)) }, Fingerprint { range: Range(390, 637), fp: EncodedCountingMonoid(10, SumMonoid(5096)) }, Fingerprint { range: Range(637, 768), fp: EncodedCountingMonoid(10, SumMonoid(6993)) }, Fingerprint { range: Range(768, 929), fp: EncodedCountingMonoid(4, SumMonoid(3430)) }, Fingerprint { range: Range(929, 991), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [], wants: [], provide: [(999, true), (11, true), (13, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(279, 313), fp: EncodedCountingMonoid(3, SumMonoid(876)) }, Fingerprint { range: Range(390, 517), fp: EncodedCountingMonoid(3, SumMonoid(1285)) }, Fingerprint { range: Range(517, 637), fp: EncodedCountingMonoid(3, SumMonoid(1619)) }, Fingerprint { range: Range(768, 909), fp: EncodedCountingMonoid(4, SumMonoid(3208)) }, Fingerprint { range: Range(909, 929), fp: EncodedCountingMonoid(3, SumMonoid(2754)) }], item_sets: [ItemSet { range: Range(14, 56), items: [14, 20], want_response: true }, ItemSet { range: Range(56, 152), items: [56, 104], want_response: true }, ItemSet { range: Range(152, 251), items: [170, 176], want_response: true }, ItemSet { range: Range(251, 279), items: [251], want_response: true }, ItemSet { range: Range(313, 361), items: [313, 346], want_response: true }, ItemSet { range: Range(361, 390), items: [361], want_response: true }, ItemSet { range: Range(637, 672), items: [641, 656], want_response: true }, ItemSet { range: Range(672, 768), items: [672], want_response: true }, ItemSet { range: Range(929, 991), items: [976, 990], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(517, 556), fp: EncodedCountingMonoid(3, SumMonoid(1621)) }, Fingerprint { range: Range(556, 637), fp: EncodedCountingMonoid(3, SumMonoid(1772)) }], item_sets: [ItemSet { range: Range(14, 56), items: [29, 31, 32], want_response: false }, ItemSet { range: Range(56, 152), items: [65, 73, 74, 94, 133, 135], want_response: false }, ItemSet { range: Range(152, 251), items: [152, 168, 169, 174, 198, 201, 206, 230], want_response: false }, ItemSet { range: Range(251, 279), items: [], want_response: false }, ItemSet { range: Range(313, 361), items: [313, 336, 357], want_response: false }, ItemSet { range: Range(361, 390), items: [361, 362, 376, 379, 383], want_response: false }, ItemSet { range: Range(637, 672), items: [637, 655, 661], want_response: false }, ItemSet { range: Range(672, 768), items: [681, 694, 705, 716, 731, 754, 759], want_response: false }, ItemSet { range: Range(929, 991), items: [929, 945, 987], want_response: false }, ItemSet { range: Range(279, 309), items: [284, 297], want_response: true }, ItemSet { range: Range(309, 313), items: [309], want_response: true }, ItemSet { range: Range(390, 425), items: [390, 406], want_response: true }, ItemSet { range: Range(425, 517), items: [425, 482], want_response: true }, ItemSet { range: Range(768, 869), items: [790, 862], want_response: true }, ItemSet { range: Range(869, 909), items: [869], want_response: true }, ItemSet { range: Range(909, 929), items: [909], want_response: true }], wants: [14, 20, 56, 104, 170, 176, 251, 346, 641, 656, 672, 976, 990], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(279, 309), items: [279, 289, 308], want_response: false }, ItemSet { range: Range(309, 313), items: [], want_response: false }, ItemSet { range: Range(390, 425), items: [393, 417], want_response: false }, ItemSet { range: Range(425, 517), items: [475], want_response: false }, ItemSet { range: Range(768, 869), items: [768, 784, 827, 829], want_response: false }, ItemSet { range: Range(869, 909), items: [], want_response: false }, ItemSet { range: Range(909, 929), items: [909, 918, 927], want_response: false }, ItemSet { range: Range(517, 556), items: [517, 543], want_response: true }, ItemSet { range: Range(556, 637), items: [559], want_response: true }], wants: [29, 31, 32, 65, 73, 74, 94, 133, 135, 152, 168, 169, 174, 198, 201, 206, 230, 336, 357, 362, 376, 379, 383, 637, 655, 661, 681, 694, 705, 716, 731, 754, 759, 929, 945, 987, 284, 297, 309, 390, 406, 425, 482, 790, 862, 869], provide: [(14, true), (20, true), (56, true), (104, true), (170, true), (176, true), (251, true), (346, true), (641, true), (656, true), (672, true), (976, true), (990, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(517, 556), items: [537, 540, 544], want_response: false }, ItemSet { range: Range(556, 637), items: [556, 599, 617], want_response: false }], wants: [279, 289, 308, 393, 417, 475, 768, 784, 827, 829, 918, 927, 517, 543, 559], provide: [(29, true), (31, true), (32, true), (65, true), (73, true), (74, true), (94, true), (133, true), (135, true), (152, true), (168, true), (169, true), (174, true), (198, true), (201, true), (206, true), (230, true), (336, true), (357, true), (362, true), (376, true), (379, true), (383, true), (637, true), (655, true), (661, true), (681, true), (694, true), (705, true), (716, true), (731, true), (754, true), (759, true), (929, true), (945, true), (987, true), (284, true), (297, true), (309, true), (390, true), (406, true), (425, true), (482, true), (790, true), (862, true), (869, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [537, 540, 544, 556, 599, 617], provide: [(279, true), (289, true), (308, true), (393, true), (417, true), (475, true), (768, true), (784, true), (827, true), (829, true), (918, true), (927, true), (517, true), (543, true), (559, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(537, true), (540, true), (544, true), (556, true), (599, true), (617, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {14, 20, 56, 104, 170, 176, 251, 279, 289, 308, 313, 346, 361, 393, 417, 475, 517, 543, 559, 641, 656, 672, 768, 784, 827, 829, 909, 918, 927, 976, 990} + [999, 11, 13, 29, 31, 32, 65, 73, 74, 94, 133, 135, 152, 168, 169, 174, 198, 201, 206, 230, 336, 357, 362, 376, 379, 383, 637, 655, 661, 681, 694, 705, 716, 731, 754, 759, 929, 945, 987, 284, 297, 309, 390, 406, 425, 482, 790, 862, 869, 537, 540, 544, 556, 599, 617]
[INFO] [stdout] b all: {11, 13, 29, 31, 32, 65, 73, 74, 94, 133, 135, 152, 168, 169, 174, 198, 201, 206, 230, 284, 297, 309, 313, 336, 357, 361, 362, 376, 379, 383, 390, 406, 425, 482, 537, 540, 544, 556, 599, 617, 637, 655, 661, 681, 694, 705, 716, 731, 754, 759, 790, 862, 869, 909, 929, 945, 987, 999} + [14, 20, 56, 104, 170, 176, 251, 346, 641, 656, 672, 976, 990, 279, 289, 308, 393, 417, 475, 768, 784, 827, 829, 918, 927, 517, 543, 559]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [11, 13, 14, 20, 29, 31, 32, 56, 65, 73, 74, 94, 104, 133, 135, 152, 168, 169, 170, 174, 176, 198, 201, 206, 230, 251, 279, 284, 289, 297, 308, 309, 313, 336, 346, 357, 361, 362, 376, 379, 383, 390, 393, 406, 417, 425, 475, 482, 517, 537, 540, 543, 544, 556, 559, 599, 617, 637, 641, 655, 656, 661, 672, 681, 694, 705, 716, 731, 754, 759, 768, 784, 790, 827, 829, 862, 869, 909, 918, 927, 929, 945, 976, 987, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [11, 13, 14, 20, 29, 31, 32, 56, 65, 73, 74, 94, 104, 133, 135, 152, 168, 169, 170, 174, 176, 198, 201, 206, 230, 251, 279, 284, 289, 297, 308, 309, 313, 336, 346, 357, 361, 362, 376, 379, 383, 390, 393, 406, 417, 425, 475, 482, 517, 537, 540, 543, 544, 556, 559, 599, 617, 637, 641, 655, 656, 661, 672, 681, 694, 705, 716, 731, 754, 759, 768, 784, 790, 827, 829, 862, 869, 909, 918, 927, 929, 945, 976, 987, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [11, 13, 14, 20, 29, 31, 32, 56, 65, 73, 74, 94, 104, 133, 135, 152, 168, 169, 170, 174, 176, 198, 201, 206, 230, 251, 279, 284, 289, 297, 308, 309, 313, 336, 346, 357, 361, 362, 376, 379, 383, 390, 393, 406, 417, 425, 475, 482, 517, 537, 540, 543, 544, 556, 559, 599, 617, 637, 641, 655, 656, 661, 672, 681, 694, 705, 716, 731, 754, 759, 768, 784, 790, 827, 829, 862, 869, 909, 918, 927, 929, 945, 976, 987, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {97, 114, 117, 126, 238, 252, 354, 385, 398, 460, 488, 596, 603, 650, 709, 717, 721, 731, 753, 755, 773, 893, 897, 909, 920, 924}
[INFO] [stdout] b items: {27, 51, 156, 206, 267, 393, 402, 677, 776, 798}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(97, 925), fp: EncodedCountingMonoid(26, SumMonoid(14580)) }], item_sets: [ItemSet { range: Range(925, 97), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(97, 402), fp: EncodedCountingMonoid(4, SumMonoid(1022)) }, Fingerprint { range: Range(402, 925), fp: EncodedCountingMonoid(4, SumMonoid(2653)) }], item_sets: [ItemSet { range: Range(925, 97), items: [27, 51], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(97, 252), fp: EncodedCountingMonoid(5, SumMonoid(692)) }, Fingerprint { range: Range(252, 402), fp: EncodedCountingMonoid(4, SumMonoid(1389)) }, Fingerprint { range: Range(402, 753), fp: EncodedCountingMonoid(9, SumMonoid(5675)) }, Fingerprint { range: Range(753, 925), fp: EncodedCountingMonoid(8, SumMonoid(6824)) }], item_sets: [], wants: [27, 51], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(97, 252), items: [156, 206], want_response: true }, ItemSet { range: Range(252, 402), items: [267, 393], want_response: true }, ItemSet { range: Range(402, 753), items: [402, 677], want_response: true }, ItemSet { range: Range(753, 925), items: [776, 798], want_response: true }], wants: [], provide: [(27, true), (51, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(97, 252), items: [97, 114, 117, 126, 238], want_response: false }, ItemSet { range: Range(252, 402), items: [252, 354, 385, 398], want_response: false }, ItemSet { range: Range(402, 753), items: [460, 488, 596, 603, 650, 709, 717, 721, 731], want_response: false }, ItemSet { range: Range(753, 925), items: [753, 755, 773, 893, 897, 909, 920, 924], want_response: false }], wants: [156, 206, 267, 393, 402, 677, 776, 798], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [97, 114, 117, 126, 238, 252, 354, 385, 398, 460, 488, 596, 603, 650, 709, 717, 721, 731, 753, 755, 773, 893, 897, 909, 920, 924], provide: [(156, true), (206, true), (267, true), (393, true), (402, true), (677, true), (776, true), (798, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(97, true), (114, true), (117, true), (126, true), (238, true), (252, true), (354, true), (385, true), (398, true), (460, true), (488, true), (596, true), (603, true), (650, true), (709, true), (717, true), (721, true), (731, true), (753, true), (755, true), (773, true), (893, true), (897, true), (909, true), (920, true), (924, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {97, 114, 117, 126, 238, 252, 354, 385, 398, 460, 488, 596, 603, 650, 709, 717, 721, 731, 753, 755, 773, 893, 897, 909, 920, 924} + [27, 51, 156, 206, 267, 393, 402, 677, 776, 798]
[INFO] [stdout] b all: {27, 51, 156, 206, 267, 393, 402, 677, 776, 798} + [97, 114, 117, 126, 238, 252, 354, 385, 398, 460, 488, 596, 603, 650, 709, 717, 721, 731, 753, 755, 773, 893, 897, 909, 920, 924]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [27, 51, 97, 114, 117, 126, 156, 206, 238, 252, 267, 354, 385, 393, 398, 402, 460, 488, 596, 603, 650, 677, 709, 717, 721, 731, 753, 755, 773, 776, 798, 893, 897, 909, 920, 924]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [27, 51, 97, 114, 117, 126, 156, 206, 238, 252, 267, 354, 385, 393, 398, 402, 460, 488, 596, 603, 650, 677, 709, 717, 721, 731, 753, 755, 773, 776, 798, 893, 897, 909, 920, 924], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [27, 51, 97, 114, 117, 126, 156, 206, 238, 252, 267, 354, 385, 393, 398, 402, 460, 488, 596, 603, 650, 677, 709, 717, 721, 731, 753, 755, 773, 776, 798, 893, 897, 909, 920, 924], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {16, 18, 53, 64, 68, 79, 102, 110, 115, 116, 124, 137, 139, 142, 149, 165, 200, 202, 237, 239, 243, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367, 394, 402, 409, 413, 414, 439, 479, 481, 502, 536, 547, 564, 584, 586, 602, 614, 617, 623, 635, 638, 639, 643, 656, 706, 708, 712, 713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994}
[INFO] [stdout] b items: {8, 98, 128, 129, 176, 185, 224, 263, 270, 382, 407, 442, 481, 526, 546, 562}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 995), fp: EncodedCountingMonoid(87, SumMonoid(43687)) }], item_sets: [ItemSet { range: Range(995, 16), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(16, 382), fp: EncodedCountingMonoid(8, SumMonoid(1473)) }, Fingerprint { range: Range(382, 995), fp: EncodedCountingMonoid(7, SumMonoid(3346)) }], item_sets: [ItemSet { range: Range(995, 16), items: [8], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 237), fp: EncodedCountingMonoid(18, SumMonoid(1999)) }, Fingerprint { range: Range(237, 382), fp: EncodedCountingMonoid(17, SumMonoid(5231)) }, Fingerprint { range: Range(382, 713), fp: EncodedCountingMonoid(26, SumMonoid(14543)) }, Fingerprint { range: Range(713, 995), fp: EncodedCountingMonoid(26, SumMonoid(21914)) }], item_sets: [], wants: [8], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(16, 176), fp: EncodedCountingMonoid(3, SumMonoid(355)) }, Fingerprint { range: Range(176, 237), fp: EncodedCountingMonoid(3, SumMonoid(585)) }, Fingerprint { range: Range(382, 526), fp: EncodedCountingMonoid(4, SumMonoid(1712)) }, Fingerprint { range: Range(526, 713), fp: EncodedCountingMonoid(3, SumMonoid(1634)) }], item_sets: [ItemSet { range: Range(237, 382), items: [263, 270], want_response: true }, ItemSet { range: Range(713, 995), items: [], want_response: true }], wants: [], provide: [(8, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 115), fp: EncodedCountingMonoid(8, SumMonoid(510)) }, Fingerprint { range: Range(115, 176), fp: EncodedCountingMonoid(8, SumMonoid(1087)) }, Fingerprint { range: Range(382, 439), fp: EncodedCountingMonoid(5, SumMonoid(2032)) }, Fingerprint { range: Range(439, 526), fp: EncodedCountingMonoid(4, SumMonoid(1901)) }, Fingerprint { range: Range(526, 635), fp: EncodedCountingMonoid(9, SumMonoid(5273)) }, Fingerprint { range: Range(635, 713), fp: EncodedCountingMonoid(8, SumMonoid(5337)) }], item_sets: [ItemSet { range: Range(237, 382), items: [237, 239, 243, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367], want_response: false }, ItemSet { range: Range(713, 995), items: [713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994], want_response: false }, ItemSet { range: Range(176, 237), items: [200, 202], want_response: true }], wants: [263, 270], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(176, 237), items: [176, 185, 224], want_response: false }, ItemSet { range: Range(16, 115), items: [98], want_response: true }, ItemSet { range: Range(115, 176), items: [128, 129], want_response: true }, ItemSet { range: Range(382, 439), items: [382, 407], want_response: true }, ItemSet { range: Range(439, 526), items: [442, 481], want_response: true }, ItemSet { range: Range(526, 562), items: [526, 546], want_response: true }, ItemSet { range: Range(562, 635), items: [562], want_response: true }, ItemSet { range: Range(635, 713), items: [], want_response: true }], wants: [237, 239, 243, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367, 713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994, 200, 202], provide: [(263, true), (270, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(16, 115), items: [16, 18, 53, 64, 68, 79, 102, 110], want_response: false }, ItemSet { range: Range(115, 176), items: [115, 116, 124, 137, 139, 142, 149, 165], want_response: false }, ItemSet { range: Range(382, 439), items: [394, 402, 409, 413, 414], want_response: false }, ItemSet { range: Range(439, 526), items: [439, 479, 481, 502], want_response: false }, ItemSet { range: Range(526, 562), items: [536, 547], want_response: false }, ItemSet { range: Range(562, 635), items: [564, 584, 586, 602, 614, 617, 623], want_response: false }, ItemSet { range: Range(635, 713), items: [635, 638, 639, 643, 656, 706, 708, 712], want_response: false }], wants: [176, 185, 224, 98, 128, 129, 382, 407, 442, 526, 546, 562], provide: [(237, true), (239, true), (243, true), (272, true), (278, true), (282, true), (287, true), (299, true), (312, true), (313, true), (323, true), (334, true), (353, true), (363, true), (364, true), (365, true), (367, true), (713, true), (718, true), (719, true), (724, true), (744, true), (767, true), (774, true), (783, true), (784, true), (787, true), (792, true), (793, true), (800, true), (825, true), (867, true), (874, true), (881, true), (883, true), (907, true), (908, true), (928, true), (981, true), (983, true), (992, true), (993, true), (994, true), (200, true), (202, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [16, 18, 53, 64, 68, 79, 102, 110, 115, 116, 124, 137, 139, 142, 149, 165, 394, 402, 409, 413, 414, 439, 479, 502, 536, 547, 564, 584, 586, 602, 614, 617, 623, 635, 638, 639, 643, 656, 706, 708, 712], provide: [(176, true), (185, true), (224, true), (98, true), (128, true), (129, true), (382, true), (407, true), (442, true), (526, true), (546, true), (562, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(16, true), (18, true), (53, true), (64, true), (68, true), (79, true), (102, true), (110, true), (115, true), (116, true), (124, true), (137, true), (139, true), (142, true), (149, true), (165, true), (394, true), (402, true), (409, true), (413, true), (414, true), (439, true), (479, true), (502, true), (536, true), (547, true), (564, true), (584, true), (586, true), (602, true), (614, true), (617, true), (623, true), (635, true), (638, true), (639, true), (643, true), (656, true), (706, true), (708, true), (712, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {16, 18, 53, 64, 68, 79, 102, 110, 115, 116, 124, 137, 139, 142, 149, 165, 200, 202, 237, 239, 243, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367, 394, 402, 409, 413, 414, 439, 479, 481, 502, 536, 547, 564, 584, 586, 602, 614, 617, 623, 635, 638, 639, 643, 656, 706, 708, 712, 713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994} + [8, 263, 270, 176, 185, 224, 98, 128, 129, 382, 407, 442, 526, 546, 562]
[INFO] [stdout] b all: {8, 98, 128, 129, 176, 185, 224, 263, 270, 382, 407, 442, 481, 526, 546, 562} + [237, 239, 243, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367, 713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994, 200, 202, 16, 18, 53, 64, 68, 79, 102, 110, 115, 116, 124, 137, 139, 142, 149, 165, 394, 402, 409, 413, 414, 439, 479, 502, 536, 547, 564, 584, 586, 602, 614, 617, 623, 635, 638, 639, 643, 656, 706, 708, 712]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 16, 18, 53, 64, 68, 79, 98, 102, 110, 115, 116, 124, 128, 129, 137, 139, 142, 149, 165, 176, 185, 200, 202, 224, 237, 239, 243, 263, 270, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367, 382, 394, 402, 407, 409, 413, 414, 439, 442, 479, 481, 502, 526, 536, 546, 547, 562, 564, 584, 586, 602, 614, 617, 623, 635, 638, 639, 643, 656, 706, 708, 712, 713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 16, 18, 53, 64, 68, 79, 98, 102, 110, 115, 116, 124, 128, 129, 137, 139, 142, 149, 165, 176, 185, 200, 202, 224, 237, 239, 243, 263, 270, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367, 382, 394, 402, 407, 409, 413, 414, 439, 442, 479, 481, 502, 526, 536, 546, 547, 562, 564, 584, 586, 602, 614, 617, 623, 635, 638, 639, 643, 656, 706, 708, 712, 713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 16, 18, 53, 64, 68, 79, 98, 102, 110, 115, 116, 124, 128, 129, 137, 139, 142, 149, 165, 176, 185, 200, 202, 224, 237, 239, 243, 263, 270, 272, 278, 282, 287, 299, 312, 313, 323, 334, 353, 363, 364, 365, 367, 382, 394, 402, 407, 409, 413, 414, 439, 442, 479, 481, 502, 526, 536, 546, 547, 562, 564, 584, 586, 602, 614, 617, 623, 635, 638, 639, 643, 656, 706, 708, 712, 713, 718, 719, 724, 744, 767, 774, 783, 784, 787, 792, 793, 800, 825, 867, 874, 881, 883, 907, 908, 928, 981, 983, 992, 993, 994], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {42, 45, 74, 108, 123, 128, 139, 176, 203, 210, 286, 306, 313, 341, 371, 412, 425, 433, 441, 460, 462, 464, 495, 538, 552, 589, 604, 685, 699, 710, 739, 771, 774, 795, 804, 809, 812, 813, 823, 847, 863, 921, 961, 986, 992}
[INFO] [stdout] b items: {55, 82, 112, 113, 142, 194, 225, 248, 261, 271, 399, 418, 437, 443, 451, 495, 517, 520, 631, 633, 634, 687, 711, 784, 787, 842, 847, 906, 939}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(42, 993), fp: EncodedCountingMonoid(45, SumMonoid(23544)) }], item_sets: [ItemSet { range: Range(993, 42), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(42, 495), fp: EncodedCountingMonoid(15, SumMonoid(3851)) }, Fingerprint { range: Range(495, 993), fp: EncodedCountingMonoid(14, SumMonoid(9933)) }], item_sets: [ItemSet { range: Range(993, 42), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(42, 306), fp: EncodedCountingMonoid(11, SumMonoid(1534)) }, Fingerprint { range: Range(306, 495), fp: EncodedCountingMonoid(11, SumMonoid(4428)) }, Fingerprint { range: Range(495, 804), fp: EncodedCountingMonoid(12, SumMonoid(7951)) }, Fingerprint { range: Range(804, 993), fp: EncodedCountingMonoid(11, SumMonoid(9631)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(42, 194), fp: EncodedCountingMonoid(5, SumMonoid(504)) }, Fingerprint { range: Range(194, 306), fp: EncodedCountingMonoid(5, SumMonoid(1199)) }, Fingerprint { range: Range(306, 443), fp: EncodedCountingMonoid(3, SumMonoid(1254)) }, Fingerprint { range: Range(495, 634), fp: EncodedCountingMonoid(5, SumMonoid(2796)) }, Fingerprint { range: Range(634, 804), fp: EncodedCountingMonoid(5, SumMonoid(3603)) }], item_sets: [ItemSet { range: Range(443, 495), items: [443, 451], want_response: true }, ItemSet { range: Range(804, 906), items: [842, 847], want_response: true }, ItemSet { range: Range(906, 993), items: [906, 939], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(42, 123), fp: EncodedCountingMonoid(4, SumMonoid(269)) }, Fingerprint { range: Range(123, 194), fp: EncodedCountingMonoid(4, SumMonoid(566)) }, Fingerprint { range: Range(306, 412), fp: EncodedCountingMonoid(4, SumMonoid(1331)) }, Fingerprint { range: Range(412, 443), fp: EncodedCountingMonoid(4, SumMonoid(1711)) }, Fingerprint { range: Range(495, 589), fp: EncodedCountingMonoid(3, SumMonoid(1585)) }, Fingerprint { range: Range(634, 771), fp: EncodedCountingMonoid(4, SumMonoid(2833)) }, Fingerprint { range: Range(771, 804), fp: EncodedCountingMonoid(3, SumMonoid(2340)) }], item_sets: [ItemSet { range: Range(443, 495), items: [460, 462, 464], want_response: false }, ItemSet { range: Range(804, 906), items: [804, 809, 812, 813, 823, 847, 863], want_response: false }, ItemSet { range: Range(906, 993), items: [921, 961, 986, 992], want_response: false }, ItemSet { range: Range(194, 286), items: [203, 210], want_response: true }, ItemSet { range: Range(286, 306), items: [286], want_response: true }, ItemSet { range: Range(589, 634), items: [589, 604], want_response: true }], wants: [443, 451, 842, 906, 939], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(194, 286), items: [194, 225, 248, 261, 271], want_response: false }, ItemSet { range: Range(286, 306), items: [], want_response: false }, ItemSet { range: Range(589, 634), items: [631, 633], want_response: false }, ItemSet { range: Range(42, 112), items: [55, 82], want_response: true }, ItemSet { range: Range(112, 123), items: [112, 113], want_response: true }, ItemSet { range: Range(123, 194), items: [142], want_response: true }, ItemSet { range: Range(306, 412), items: [399], want_response: true }, ItemSet { range: Range(412, 443), items: [418, 437], want_response: true }, ItemSet { range: Range(495, 520), items: [495, 517], want_response: true }, ItemSet { range: Range(520, 589), items: [520], want_response: true }, ItemSet { range: Range(634, 711), items: [634, 687], want_response: true }, ItemSet { range: Range(711, 771), items: [711], want_response: true }, ItemSet { range: Range(771, 804), items: [784, 787], want_response: true }], wants: [460, 462, 464, 804, 809, 812, 813, 823, 863, 921, 961, 986, 992, 203, 210, 286, 589, 604], provide: [(443, true), (451, true), (842, true), (906, true), (939, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(42, 112), items: [42, 45, 74, 108], want_response: false }, ItemSet { range: Range(112, 123), items: [], want_response: false }, ItemSet { range: Range(123, 194), items: [123, 128, 139, 176], want_response: false }, ItemSet { range: Range(306, 412), items: [306, 313, 341, 371], want_response: false }, ItemSet { range: Range(412, 443), items: [412, 425, 433, 441], want_response: false }, ItemSet { range: Range(495, 520), items: [495], want_response: false }, ItemSet { range: Range(520, 589), items: [538, 552], want_response: false }, ItemSet { range: Range(634, 711), items: [685, 699, 710], want_response: false }, ItemSet { range: Range(711, 771), items: [739], want_response: false }, ItemSet { range: Range(771, 804), items: [771, 774, 795], want_response: false }], wants: [194, 225, 248, 261, 271, 631, 633, 55, 82, 112, 113, 142, 399, 418, 437, 517, 520, 634, 687, 711, 784, 787], provide: [(460, true), (462, true), (464, true), (804, true), (809, true), (812, true), (813, true), (823, true), (863, true), (921, true), (961, true), (986, true), (992, true), (203, true), (210, true), (286, true), (589, true), (604, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [42, 45, 74, 108, 123, 128, 139, 176, 306, 313, 341, 371, 412, 425, 433, 441, 538, 552, 685, 699, 710, 739, 771, 774, 795], provide: [(194, true), (225, true), (248, true), (261, true), (271, true), (631, true), (633, true), (55, true), (82, true), (112, true), (113, true), (142, true), (399, true), (418, true), (437, true), (517, true), (520, true), (634, true), (687, true), (711, true), (784, true), (787, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(42, true), (45, true), (74, true), (108, true), (123, true), (128, true), (139, true), (176, true), (306, true), (313, true), (341, true), (371, true), (412, true), (425, true), (433, true), (441, true), (538, true), (552, true), (685, true), (699, true), (710, true), (739, true), (771, true), (774, true), (795, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {42, 45, 74, 108, 123, 128, 139, 176, 203, 210, 286, 306, 313, 341, 371, 412, 425, 433, 441, 460, 462, 464, 495, 538, 552, 589, 604, 685, 699, 710, 739, 771, 774, 795, 804, 809, 812, 813, 823, 847, 863, 921, 961, 986, 992} + [443, 451, 842, 906, 939, 194, 225, 248, 261, 271, 631, 633, 55, 82, 112, 113, 142, 399, 418, 437, 517, 520, 634, 687, 711, 784, 787]
[INFO] [stdout] b all: {55, 82, 112, 113, 142, 194, 225, 248, 261, 271, 399, 418, 437, 443, 451, 495, 517, 520, 631, 633, 634, 687, 711, 784, 787, 842, 847, 906, 939} + [460, 462, 464, 804, 809, 812, 813, 823, 863, 921, 961, 986, 992, 203, 210, 286, 589, 604, 42, 45, 74, 108, 123, 128, 139, 176, 306, 313, 341, 371, 412, 425, 433, 441, 538, 552, 685, 699, 710, 739, 771, 774, 795]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [42, 45, 55, 74, 82, 108, 112, 113, 123, 128, 139, 142, 176, 194, 203, 210, 225, 248, 261, 271, 286, 306, 313, 341, 371, 399, 412, 418, 425, 433, 437, 441, 443, 451, 460, 462, 464, 495, 517, 520, 538, 552, 589, 604, 631, 633, 634, 685, 687, 699, 710, 711, 739, 771, 774, 784, 787, 795, 804, 809, 812, 813, 823, 842, 847, 863, 906, 921, 939, 961, 986, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [42, 45, 55, 74, 82, 108, 112, 113, 123, 128, 139, 142, 176, 194, 203, 210, 225, 248, 261, 271, 286, 306, 313, 341, 371, 399, 412, 418, 425, 433, 437, 441, 443, 451, 460, 462, 464, 495, 517, 520, 538, 552, 589, 604, 631, 633, 634, 685, 687, 699, 710, 711, 739, 771, 774, 784, 787, 795, 804, 809, 812, 813, 823, 842, 847, 863, 906, 921, 939, 961, 986, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [42, 45, 55, 74, 82, 108, 112, 113, 123, 128, 139, 142, 176, 194, 203, 210, 225, 248, 261, 271, 286, 306, 313, 341, 371, 399, 412, 418, 425, 433, 437, 441, 443, 451, 460, 462, 464, 495, 517, 520, 538, 552, 589, 604, 631, 633, 634, 685, 687, 699, 710, 711, 739, 771, 774, 784, 787, 795, 804, 809, 812, 813, 823, 842, 847, 863, 906, 921, 939, 961, 986, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {11, 53, 69, 125, 155, 193, 228, 235, 236, 245, 260, 272, 279, 287, 390, 414, 444, 498, 556, 656, 713, 786, 810, 829, 851, 863, 867, 881, 882, 893, 937, 951, 988}
[INFO] [stdout] b items: {54, 163, 164, 179, 236, 253, 374, 385, 435, 440, 492, 496, 515, 516, 565, 607, 659, 731, 778, 964, 984}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 989), fp: EncodedCountingMonoid(33, SumMonoid(16857)) }], item_sets: [ItemSet { range: Range(989, 11), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(11, 496), fp: EncodedCountingMonoid(11, SumMonoid(3175)) }, Fingerprint { range: Range(496, 989), fp: EncodedCountingMonoid(10, SumMonoid(6815)) }], item_sets: [ItemSet { range: Range(989, 11), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 245), fp: EncodedCountingMonoid(9, SumMonoid(1305)) }, Fingerprint { range: Range(245, 496), fp: EncodedCountingMonoid(8, SumMonoid(2591)) }, Fingerprint { range: Range(496, 863), fp: EncodedCountingMonoid(8, SumMonoid(5699)) }, Fingerprint { range: Range(863, 989), fp: EncodedCountingMonoid(8, SumMonoid(7262)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(11, 179), fp: EncodedCountingMonoid(3, SumMonoid(381)) }, Fingerprint { range: Range(245, 435), fp: EncodedCountingMonoid(3, SumMonoid(1012)) }, Fingerprint { range: Range(435, 496), fp: EncodedCountingMonoid(3, SumMonoid(1367)) }, Fingerprint { range: Range(496, 607), fp: EncodedCountingMonoid(4, SumMonoid(2092)) }, Fingerprint { range: Range(607, 863), fp: EncodedCountingMonoid(4, SumMonoid(2775)) }], item_sets: [ItemSet { range: Range(179, 245), items: [179, 236], want_response: true }, ItemSet { range: Range(863, 989), items: [964, 984], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 125), fp: EncodedCountingMonoid(3, SumMonoid(133)) }, Fingerprint { range: Range(245, 287), fp: EncodedCountingMonoid(4, SumMonoid(1056)) }, Fingerprint { range: Range(287, 435), fp: EncodedCountingMonoid(3, SumMonoid(1091)) }, Fingerprint { range: Range(607, 810), fp: EncodedCountingMonoid(3, SumMonoid(2155)) }, Fingerprint { range: Range(810, 863), fp: EncodedCountingMonoid(3, SumMonoid(2490)) }], item_sets: [ItemSet { range: Range(179, 245), items: [193, 228, 235, 236], want_response: false }, ItemSet { range: Range(863, 989), items: [863, 867, 881, 882, 893, 937, 951, 988], want_response: false }, ItemSet { range: Range(125, 179), items: [125, 155], want_response: true }, ItemSet { range: Range(435, 496), items: [444], want_response: true }, ItemSet { range: Range(496, 607), items: [498, 556], want_response: true }], wants: [179, 964, 984], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(125, 179), items: [163, 164], want_response: false }, ItemSet { range: Range(435, 496), items: [435, 440, 492], want_response: false }, ItemSet { range: Range(496, 607), items: [496, 515, 516, 565], want_response: false }, ItemSet { range: Range(11, 125), items: [54], want_response: true }, ItemSet { range: Range(245, 287), items: [253], want_response: true }, ItemSet { range: Range(287, 435), items: [374, 385], want_response: true }, ItemSet { range: Range(607, 731), items: [607, 659], want_response: true }, ItemSet { range: Range(731, 810), items: [731, 778], want_response: true }, ItemSet { range: Range(810, 863), items: [], want_response: true }], wants: [193, 228, 235, 863, 867, 881, 882, 893, 937, 951, 988, 125, 155, 444, 498, 556], provide: [(179, true), (964, true), (984, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(11, 125), items: [11, 53, 69], want_response: false }, ItemSet { range: Range(245, 287), items: [245, 260, 272, 279], want_response: false }, ItemSet { range: Range(287, 435), items: [287, 390, 414], want_response: false }, ItemSet { range: Range(607, 731), items: [656, 713], want_response: false }, ItemSet { range: Range(731, 810), items: [786], want_response: false }, ItemSet { range: Range(810, 863), items: [810, 829, 851], want_response: false }], wants: [163, 164, 435, 440, 492, 496, 515, 516, 565, 54, 253, 374, 385, 607, 659, 731, 778], provide: [(193, true), (228, true), (235, true), (863, true), (867, true), (881, true), (882, true), (893, true), (937, true), (951, true), (988, true), (125, true), (155, true), (444, true), (498, true), (556, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [11, 53, 69, 245, 260, 272, 279, 287, 390, 414, 656, 713, 786, 810, 829, 851], provide: [(163, true), (164, true), (435, true), (440, true), (492, true), (496, true), (515, true), (516, true), (565, true), (54, true), (253, true), (374, true), (385, true), (607, true), (659, true), (731, true), (778, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(11, true), (53, true), (69, true), (245, true), (260, true), (272, true), (279, true), (287, true), (390, true), (414, true), (656, true), (713, true), (786, true), (810, true), (829, true), (851, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {11, 53, 69, 125, 155, 193, 228, 235, 236, 245, 260, 272, 279, 287, 390, 414, 444, 498, 556, 656, 713, 786, 810, 829, 851, 863, 867, 881, 882, 893, 937, 951, 988} + [179, 964, 984, 163, 164, 435, 440, 492, 496, 515, 516, 565, 54, 253, 374, 385, 607, 659, 731, 778]
[INFO] [stdout] b all: {54, 163, 164, 179, 236, 253, 374, 385, 435, 440, 492, 496, 515, 516, 565, 607, 659, 731, 778, 964, 984} + [193, 228, 235, 863, 867, 881, 882, 893, 937, 951, 988, 125, 155, 444, 498, 556, 11, 53, 69, 245, 260, 272, 279, 287, 390, 414, 656, 713, 786, 810, 829, 851]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [11, 53, 54, 69, 125, 155, 163, 164, 179, 193, 228, 235, 236, 245, 253, 260, 272, 279, 287, 374, 385, 390, 414, 435, 440, 444, 492, 496, 498, 515, 516, 556, 565, 607, 656, 659, 713, 731, 778, 786, 810, 829, 851, 863, 867, 881, 882, 893, 937, 951, 964, 984, 988]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [11, 53, 54, 69, 125, 155, 163, 164, 179, 193, 228, 235, 236, 245, 253, 260, 272, 279, 287, 374, 385, 390, 414, 435, 440, 444, 492, 496, 498, 515, 516, 556, 565, 607, 656, 659, 713, 731, 778, 786, 810, 829, 851, 863, 867, 881, 882, 893, 937, 951, 964, 984, 988], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [11, 53, 54, 69, 125, 155, 163, 164, 179, 193, 228, 235, 236, 245, 253, 260, 272, 279, 287, 374, 385, 390, 414, 435, 440, 444, 492, 496, 498, 515, 516, 556, 565, 607, 656, 659, 713, 731, 778, 786, 810, 829, 851, 863, 867, 881, 882, 893, 937, 951, 964, 984, 988], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 27, 49, 61, 101, 108, 122, 154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 331, 344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 459, 469, 472, 477, 479, 500, 507, 560, 569, 570, 598, 615, 624, 629, 640, 641, 647, 675, 685, 709, 721, 753, 785, 806, 809, 825, 829, 857, 862, 891, 895, 900, 920, 941, 942, 943, 949, 957, 964, 977, 991}
[INFO] [stdout] b items: {36, 133, 146, 329, 459, 488, 575, 625, 907, 924}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 992), fp: EncodedCountingMonoid(82, SumMonoid(41853)) }], item_sets: [ItemSet { range: Range(992, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 488), fp: EncodedCountingMonoid(5, SumMonoid(1103)) }, Fingerprint { range: Range(488, 992), fp: EncodedCountingMonoid(5, SumMonoid(3519)) }], item_sets: [ItemSet { range: Range(992, 3), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 344), fp: EncodedCountingMonoid(23, SumMonoid(4636)) }, Fingerprint { range: Range(344, 488), fp: EncodedCountingMonoid(23, SumMonoid(9531)) }, Fingerprint { range: Range(488, 806), fp: EncodedCountingMonoid(18, SumMonoid(11428)) }, Fingerprint { range: Range(806, 992), fp: EncodedCountingMonoid(18, SumMonoid(16258)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 146), items: [36, 133], want_response: true }, ItemSet { range: Range(146, 344), items: [146, 329], want_response: true }, ItemSet { range: Range(344, 488), items: [459], want_response: true }, ItemSet { range: Range(488, 625), items: [488, 575], want_response: true }, ItemSet { range: Range(625, 806), items: [625], want_response: true }, ItemSet { range: Range(806, 992), items: [907, 924], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 146), items: [3, 27, 49, 61, 101, 108, 122], want_response: false }, ItemSet { range: Range(146, 344), items: [154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 331], want_response: false }, ItemSet { range: Range(344, 488), items: [344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 459, 469, 472, 477, 479], want_response: false }, ItemSet { range: Range(488, 625), items: [500, 507, 560, 569, 570, 598, 615, 624], want_response: false }, ItemSet { range: Range(625, 806), items: [629, 640, 641, 647, 675, 685, 709, 721, 753, 785], want_response: false }, ItemSet { range: Range(806, 992), items: [806, 809, 825, 829, 857, 862, 891, 895, 900, 920, 941, 942, 943, 949, 957, 964, 977, 991], want_response: false }], wants: [36, 133, 146, 329, 488, 575, 625, 907, 924], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [3, 27, 49, 61, 101, 108, 122, 154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 331, 344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 469, 472, 477, 479, 500, 507, 560, 569, 570, 598, 615, 624, 629, 640, 641, 647, 675, 685, 709, 721, 753, 785, 806, 809, 825, 829, 857, 862, 891, 895, 900, 920, 941, 942, 943, 949, 957, 964, 977, 991], provide: [(36, true), (133, true), (146, true), (329, true), (488, true), (575, true), (625, true), (907, true), (924, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(3, true), (27, true), (49, true), (61, true), (101, true), (108, true), (122, true), (154, true), (170, true), (202, true), (208, true), (214, true), (227, true), (251, true), (271, true), (280, true), (289, true), (298, true), (309, true), (313, true), (321, true), (327, true), (331, true), (344, true), (353, true), (354, true), (355, true), (371, true), (375, true), (380, true), (385, true), (395, true), (400, true), (405, true), (417, true), (422, true), (431, true), (439, true), (441, true), (450, true), (458, true), (469, true), (472, true), (477, true), (479, true), (500, true), (507, true), (560, true), (569, true), (570, true), (598, true), (615, true), (624, true), (629, true), (640, true), (641, true), (647, true), (675, true), (685, true), (709, true), (721, true), (753, true), (785, true), (806, true), (809, true), (825, true), (829, true), (857, true), (862, true), (891, true), (895, true), (900, true), (920, true), (941, true), (942, true), (943, true), (949, true), (957, true), (964, true), (977, true), (991, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 27, 49, 61, 101, 108, 122, 154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 331, 344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 459, 469, 472, 477, 479, 500, 507, 560, 569, 570, 598, 615, 624, 629, 640, 641, 647, 675, 685, 709, 721, 753, 785, 806, 809, 825, 829, 857, 862, 891, 895, 900, 920, 941, 942, 943, 949, 957, 964, 977, 991} + [36, 133, 146, 329, 488, 575, 625, 907, 924]
[INFO] [stdout] b all: {36, 133, 146, 329, 459, 488, 575, 625, 907, 924} + [3, 27, 49, 61, 101, 108, 122, 154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 331, 344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 469, 472, 477, 479, 500, 507, 560, 569, 570, 598, 615, 624, 629, 640, 641, 647, 675, 685, 709, 721, 753, 785, 806, 809, 825, 829, 857, 862, 891, 895, 900, 920, 941, 942, 943, 949, 957, 964, 977, 991]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 27, 36, 49, 61, 101, 108, 122, 133, 146, 154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 329, 331, 344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 459, 469, 472, 477, 479, 488, 500, 507, 560, 569, 570, 575, 598, 615, 624, 625, 629, 640, 641, 647, 675, 685, 709, 721, 753, 785, 806, 809, 825, 829, 857, 862, 891, 895, 900, 907, 920, 924, 941, 942, 943, 949, 957, 964, 977, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 27, 36, 49, 61, 101, 108, 122, 133, 146, 154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 329, 331, 344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 459, 469, 472, 477, 479, 488, 500, 507, 560, 569, 570, 575, 598, 615, 624, 625, 629, 640, 641, 647, 675, 685, 709, 721, 753, 785, 806, 809, 825, 829, 857, 862, 891, 895, 900, 907, 920, 924, 941, 942, 943, 949, 957, 964, 977, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 27, 36, 49, 61, 101, 108, 122, 133, 146, 154, 170, 202, 208, 214, 227, 251, 271, 280, 289, 298, 309, 313, 321, 327, 329, 331, 344, 353, 354, 355, 371, 375, 380, 385, 395, 400, 405, 417, 422, 431, 439, 441, 450, 458, 459, 469, 472, 477, 479, 488, 500, 507, 560, 569, 570, 575, 598, 615, 624, 625, 629, 640, 641, 647, 675, 685, 709, 721, 753, 785, 806, 809, 825, 829, 857, 862, 891, 895, 900, 907, 920, 924, 941, 942, 943, 949, 957, 964, 977, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {190, 225, 371, 381, 542, 699, 714}
[INFO] [stdout] b items: {28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184, 220, 257, 286, 310, 359, 364, 389, 417, 430, 469, 470, 474, 479, 486, 522, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670, 766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(190, 715), fp: EncodedCountingMonoid(7, SumMonoid(3122)) }], item_sets: [ItemSet { range: Range(715, 190), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(190, 522), fp: EncodedCountingMonoid(14, SumMonoid(5410)) }, Fingerprint { range: Range(522, 715), fp: EncodedCountingMonoid(13, SumMonoid(7809)) }], item_sets: [ItemSet { range: Range(715, 190), items: [766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976, 28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(190, 371), items: [190, 225], want_response: true }, ItemSet { range: Range(371, 522), items: [371, 381], want_response: true }, ItemSet { range: Range(522, 714), items: [542, 699], want_response: true }, ItemSet { range: Range(714, 715), items: [714], want_response: true }], wants: [766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976, 28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(190, 371), items: [220, 257, 286, 310, 359, 364], want_response: false }, ItemSet { range: Range(371, 522), items: [389, 417, 430, 469, 470, 474, 479, 486], want_response: false }, ItemSet { range: Range(522, 714), items: [522, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670], want_response: false }, ItemSet { range: Range(714, 715), items: [], want_response: false }], wants: [190, 225, 371, 381, 542, 699, 714], provide: [(766, true), (774, true), (784, true), (831, true), (849, true), (860, true), (864, true), (867, true), (879, true), (895, true), (914, true), (919, true), (939, true), (947, true), (950, true), (953, true), (976, true), (28, true), (51, true), (53, true), (80, true), (88, true), (105, true), (110, true), (124, true), (164, true), (167, true), (179, true), (184, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [220, 257, 286, 310, 359, 364, 389, 417, 430, 469, 470, 474, 479, 486, 522, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670], provide: [(190, true), (225, true), (371, true), (381, true), (542, true), (699, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(220, true), (257, true), (286, true), (310, true), (359, true), (364, true), (389, true), (417, true), (430, true), (469, true), (470, true), (474, true), (479, true), (486, true), (522, true), (547, true), (560, true), (569, true), (570, true), (572, true), (602, true), (611, true), (625, true), (645, true), (654, true), (662, true), (670, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {190, 225, 371, 381, 542, 699, 714} + [766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976, 28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184, 220, 257, 286, 310, 359, 364, 389, 417, 430, 469, 470, 474, 479, 486, 522, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670]
[INFO] [stdout] b all: {28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184, 220, 257, 286, 310, 359, 364, 389, 417, 430, 469, 470, 474, 479, 486, 522, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670, 766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976} + [190, 225, 371, 381, 542, 699, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184, 190, 220, 225, 257, 286, 310, 359, 364, 371, 381, 389, 417, 430, 469, 470, 474, 479, 486, 522, 542, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670, 699, 714, 766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184, 190, 220, 225, 257, 286, 310, 359, 364, 371, 381, 389, 417, 430, 469, 470, 474, 479, 486, 522, 542, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670, 699, 714, 766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [28, 51, 53, 80, 88, 105, 110, 124, 164, 167, 179, 184, 190, 220, 225, 257, 286, 310, 359, 364, 371, 381, 389, 417, 430, 469, 470, 474, 479, 486, 522, 542, 547, 560, 569, 570, 572, 602, 611, 625, 645, 654, 662, 670, 699, 714, 766, 774, 784, 831, 849, 860, 864, 867, 879, 895, 914, 919, 939, 947, 950, 953, 976], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 24, 27, 38, 41, 55, 80, 91, 98, 136, 138, 166, 169, 187, 195, 210, 238, 244, 251, 252, 268, 310, 321, 350, 355, 407, 419, 430, 446, 451, 457, 476, 481, 490, 496, 518, 529, 530, 533, 543, 557, 610, 627, 666, 679, 685, 692, 693, 695, 710, 729, 734, 756, 764, 766, 768, 772, 801, 803, 819, 835, 865, 883, 927, 996}
[INFO] [stdout] b items: {26, 62, 74, 75, 76, 93, 95, 130, 157, 215, 255, 270, 299, 306, 350, 379, 434, 435, 462, 478, 479, 483, 493, 523, 542, 556, 583, 599, 604, 610, 613, 635, 653, 657, 675, 677, 697, 719, 728, 742, 766, 806, 831, 869, 885, 891, 914, 936, 941, 946, 959, 966}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 997), fp: EncodedCountingMonoid(65, SumMonoid(30291)) }], 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, 583), fp: EncodedCountingMonoid(26, SumMonoid(7747)) }, Fingerprint { range: Range(583, 997), fp: EncodedCountingMonoid(26, SumMonoid(19902)) }], 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, 310), fp: EncodedCountingMonoid(21, SumMonoid(2917)) }, Fingerprint { range: Range(310, 583), fp: EncodedCountingMonoid(20, SumMonoid(9099)) }, Fingerprint { range: Range(583, 764), fp: EncodedCountingMonoid(12, SumMonoid(8276)) }, Fingerprint { range: Range(764, 997), fp: EncodedCountingMonoid(12, SumMonoid(9999)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 130), fp: EncodedCountingMonoid(7, SumMonoid(501)) }, Fingerprint { range: Range(130, 310), fp: EncodedCountingMonoid(7, SumMonoid(1632)) }, Fingerprint { range: Range(310, 479), fp: EncodedCountingMonoid(6, SumMonoid(2538)) }, Fingerprint { range: Range(479, 583), fp: EncodedCountingMonoid(6, SumMonoid(3076)) }, Fingerprint { range: Range(583, 657), fp: EncodedCountingMonoid(7, SumMonoid(4297)) }, Fingerprint { range: Range(657, 764), fp: EncodedCountingMonoid(7, SumMonoid(4895)) }, Fingerprint { range: Range(764, 914), fp: EncodedCountingMonoid(6, SumMonoid(5048)) }, Fingerprint { range: Range(914, 997), fp: EncodedCountingMonoid(6, SumMonoid(5662)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 55), fp: EncodedCountingMonoid(5, SumMonoid(139)) }, Fingerprint { range: Range(55, 130), fp: EncodedCountingMonoid(4, SumMonoid(324)) }, Fingerprint { range: Range(130, 210), fp: EncodedCountingMonoid(6, SumMonoid(991)) }, Fingerprint { range: Range(210, 310), fp: EncodedCountingMonoid(6, SumMonoid(1463)) }, Fingerprint { range: Range(310, 430), fp: EncodedCountingMonoid(6, SumMonoid(2162)) }, Fingerprint { range: Range(430, 479), fp: EncodedCountingMonoid(5, SumMonoid(2260)) }, Fingerprint { range: Range(479, 530), fp: EncodedCountingMonoid(5, SumMonoid(2514)) }, Fingerprint { range: Range(530, 583), fp: EncodedCountingMonoid(4, SumMonoid(2163)) }, Fingerprint { range: Range(657, 695), fp: EncodedCountingMonoid(5, SumMonoid(3415)) }, Fingerprint { range: Range(695, 764), fp: EncodedCountingMonoid(5, SumMonoid(3624)) }, Fingerprint { range: Range(764, 803), fp: EncodedCountingMonoid(5, SumMonoid(3871)) }, Fingerprint { range: Range(803, 914), fp: EncodedCountingMonoid(5, SumMonoid(4205)) }], item_sets: [ItemSet { range: Range(583, 657), items: [610, 627], want_response: true }, ItemSet { range: Range(914, 997), items: [927, 996], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(55, 76), fp: EncodedCountingMonoid(3, SumMonoid(211)) }, Fingerprint { range: Range(76, 130), fp: EncodedCountingMonoid(3, SumMonoid(264)) }, Fingerprint { range: Range(210, 299), fp: EncodedCountingMonoid(3, SumMonoid(740)) }, Fingerprint { range: Range(803, 885), fp: EncodedCountingMonoid(3, SumMonoid(2506)) }], item_sets: [ItemSet { range: Range(583, 657), items: [583, 599, 604, 610, 613, 635, 653], want_response: false }, ItemSet { range: Range(914, 997), items: [914, 936, 941, 946, 959, 966], want_response: false }, ItemSet { range: Range(9, 55), items: [26], want_response: true }, ItemSet { range: Range(130, 210), items: [130, 157], want_response: true }, ItemSet { range: Range(299, 310), items: [299, 306], want_response: true }, ItemSet { range: Range(310, 430), items: [350, 379], want_response: true }, ItemSet { range: Range(430, 462), items: [434, 435], want_response: true }, ItemSet { range: Range(462, 479), items: [462, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [479, 483], want_response: true }, ItemSet { range: Range(493, 530), items: [493, 523], want_response: true }, ItemSet { range: Range(530, 583), items: [542, 556], want_response: true }, ItemSet { range: Range(657, 677), items: [657, 675], want_response: true }, ItemSet { range: Range(677, 695), items: [677], want_response: true }, ItemSet { range: Range(695, 728), items: [697, 719], want_response: true }, ItemSet { range: Range(728, 764), items: [728, 742], want_response: true }, ItemSet { range: Range(764, 803), items: [766], want_response: true }, ItemSet { range: Range(885, 914), items: [885, 891], want_response: true }], wants: [627, 927, 996], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(210, 251), fp: EncodedCountingMonoid(3, SumMonoid(692)) }, Fingerprint { range: Range(251, 299), fp: EncodedCountingMonoid(3, SumMonoid(771)) }, Fingerprint { range: Range(803, 865), fp: EncodedCountingMonoid(3, SumMonoid(2457)) }], item_sets: [ItemSet { range: Range(9, 55), items: [9, 24, 27, 38, 41], want_response: false }, ItemSet { range: Range(130, 210), items: [136, 138, 166, 169, 187, 195], want_response: false }, ItemSet { range: Range(299, 310), items: [], want_response: false }, ItemSet { range: Range(310, 430), items: [310, 321, 350, 355, 407, 419], want_response: false }, ItemSet { range: Range(430, 462), items: [430, 446, 451, 457], want_response: false }, ItemSet { range: Range(462, 479), items: [476], want_response: false }, ItemSet { range: Range(479, 493), items: [481, 490], want_response: false }, ItemSet { range: Range(493, 530), items: [496, 518, 529], want_response: false }, ItemSet { range: Range(530, 583), items: [530, 533, 543, 557], want_response: false }, ItemSet { range: Range(657, 677), items: [666], want_response: false }, ItemSet { range: Range(677, 695), items: [679, 685, 692, 693], want_response: false }, ItemSet { range: Range(695, 728), items: [695, 710], want_response: false }, ItemSet { range: Range(728, 764), items: [729, 734, 756], want_response: false }, ItemSet { range: Range(764, 803), items: [764, 766, 768, 772, 801], want_response: false }, ItemSet { range: Range(885, 914), items: [], want_response: false }, ItemSet { range: Range(55, 76), items: [55], want_response: true }, ItemSet { range: Range(76, 98), items: [80, 91], want_response: true }, ItemSet { range: Range(98, 130), items: [98], want_response: true }, ItemSet { range: Range(865, 885), items: [865, 883], want_response: true }], wants: [583, 599, 604, 613, 635, 653, 914, 936, 941, 946, 959, 966, 26, 130, 157, 299, 306, 379, 434, 435, 462, 478, 479, 483, 493, 523, 542, 556, 657, 675, 677, 697, 719, 728, 742, 885, 891], provide: [(627, true), (927, true), (996, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(55, 76), items: [62, 74, 75], want_response: false }, ItemSet { range: Range(76, 98), items: [76, 93, 95], want_response: false }, ItemSet { range: Range(98, 130), items: [], want_response: false }, ItemSet { range: Range(865, 885), items: [869], want_response: false }, ItemSet { range: Range(210, 251), items: [215], want_response: true }, ItemSet { range: Range(251, 299), items: [255, 270], want_response: true }, ItemSet { range: Range(803, 865), items: [806, 831], want_response: true }], wants: [9, 24, 27, 38, 41, 136, 138, 166, 169, 187, 195, 310, 321, 355, 407, 419, 430, 446, 451, 457, 476, 481, 490, 496, 518, 529, 530, 533, 543, 557, 666, 679, 685, 692, 693, 695, 710, 729, 734, 756, 764, 768, 772, 801, 55, 80, 91, 98, 865, 883], provide: [(583, true), (599, true), (604, true), (613, true), (635, true), (653, true), (914, true), (936, true), (941, true), (946, true), (959, true), (966, true), (26, true), (130, true), (157, true), (299, true), (306, true), (379, true), (434, true), (435, true), (462, true), (478, true), (479, true), (483, true), (493, true), (523, true), (542, true), (556, true), (657, true), (675, true), (677, true), (697, true), (719, true), (728, true), (742, true), (885, true), (891, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(210, 251), items: [210, 238, 244], want_response: false }, ItemSet { range: Range(251, 299), items: [251, 252, 268], want_response: false }, ItemSet { range: Range(803, 865), items: [803, 819, 835], want_response: false }], wants: [62, 74, 75, 76, 93, 95, 869, 215, 255, 270, 806, 831], provide: [(9, true), (24, true), (27, true), (38, true), (41, true), (136, true), (138, true), (166, true), (169, true), (187, true), (195, true), (310, true), (321, true), (355, true), (407, true), (419, true), (430, true), (446, true), (451, true), (457, true), (476, true), (481, true), (490, true), (496, true), (518, true), (529, true), (530, true), (533, true), (543, true), (557, true), (666, true), (679, true), (685, true), (692, true), (693, true), (695, true), (710, true), (729, true), (734, true), (756, true), (764, true), (768, true), (772, true), (801, true), (55, true), (80, true), (91, true), (98, true), (865, true), (883, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [210, 238, 244, 251, 252, 268, 803, 819, 835], provide: [(62, true), (74, true), (75, true), (76, true), (93, true), (95, true), (869, true), (215, true), (255, true), (270, true), (806, true), (831, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(210, true), (238, true), (244, true), (251, true), (252, true), (268, true), (803, true), (819, true), (835, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 24, 27, 38, 41, 55, 80, 91, 98, 136, 138, 166, 169, 187, 195, 210, 238, 244, 251, 252, 268, 310, 321, 350, 355, 407, 419, 430, 446, 451, 457, 476, 481, 490, 496, 518, 529, 530, 533, 543, 557, 610, 627, 666, 679, 685, 692, 693, 695, 710, 729, 734, 756, 764, 766, 768, 772, 801, 803, 819, 835, 865, 883, 927, 996} + [583, 599, 604, 613, 635, 653, 914, 936, 941, 946, 959, 966, 26, 130, 157, 299, 306, 379, 434, 435, 462, 478, 479, 483, 493, 523, 542, 556, 657, 675, 677, 697, 719, 728, 742, 885, 891, 62, 74, 75, 76, 93, 95, 869, 215, 255, 270, 806, 831]
[INFO] [stdout] b all: {26, 62, 74, 75, 76, 93, 95, 130, 157, 215, 255, 270, 299, 306, 350, 379, 434, 435, 462, 478, 479, 483, 493, 523, 542, 556, 583, 599, 604, 610, 613, 635, 653, 657, 675, 677, 697, 719, 728, 742, 766, 806, 831, 869, 885, 891, 914, 936, 941, 946, 959, 966} + [627, 927, 996, 9, 24, 27, 38, 41, 136, 138, 166, 169, 187, 195, 310, 321, 355, 407, 419, 430, 446, 451, 457, 476, 481, 490, 496, 518, 529, 530, 533, 543, 557, 666, 679, 685, 692, 693, 695, 710, 729, 734, 756, 764, 768, 772, 801, 55, 80, 91, 98, 865, 883, 210, 238, 244, 251, 252, 268, 803, 819, 835]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 24, 26, 27, 38, 41, 55, 62, 74, 75, 76, 80, 91, 93, 95, 98, 130, 136, 138, 157, 166, 169, 187, 195, 210, 215, 238, 244, 251, 252, 255, 268, 270, 299, 306, 310, 321, 350, 355, 379, 407, 419, 430, 434, 435, 446, 451, 457, 462, 476, 478, 479, 481, 483, 490, 493, 496, 518, 523, 529, 530, 533, 542, 543, 556, 557, 583, 599, 604, 610, 613, 627, 635, 653, 657, 666, 675, 677, 679, 685, 692, 693, 695, 697, 710, 719, 728, 729, 734, 742, 756, 764, 766, 768, 772, 801, 803, 806, 819, 831, 835, 865, 869, 883, 885, 891, 914, 927, 936, 941, 946, 959, 966, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 24, 26, 27, 38, 41, 55, 62, 74, 75, 76, 80, 91, 93, 95, 98, 130, 136, 138, 157, 166, 169, 187, 195, 210, 215, 238, 244, 251, 252, 255, 268, 270, 299, 306, 310, 321, 350, 355, 379, 407, 419, 430, 434, 435, 446, 451, 457, 462, 476, 478, 479, 481, 483, 490, 493, 496, 518, 523, 529, 530, 533, 542, 543, 556, 557, 583, 599, 604, 610, 613, 627, 635, 653, 657, 666, 675, 677, 679, 685, 692, 693, 695, 697, 710, 719, 728, 729, 734, 742, 756, 764, 766, 768, 772, 801, 803, 806, 819, 831, 835, 865, 869, 883, 885, 891, 914, 927, 936, 941, 946, 959, 966, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 24, 26, 27, 38, 41, 55, 62, 74, 75, 76, 80, 91, 93, 95, 98, 130, 136, 138, 157, 166, 169, 187, 195, 210, 215, 238, 244, 251, 252, 255, 268, 270, 299, 306, 310, 321, 350, 355, 379, 407, 419, 430, 434, 435, 446, 451, 457, 462, 476, 478, 479, 481, 483, 490, 493, 496, 518, 523, 529, 530, 533, 542, 543, 556, 557, 583, 599, 604, 610, 613, 627, 635, 653, 657, 666, 675, 677, 679, 685, 692, 693, 695, 697, 710, 719, 728, 729, 734, 742, 756, 764, 766, 768, 772, 801, 803, 806, 819, 831, 835, 865, 869, 883, 885, 891, 914, 927, 936, 941, 946, 959, 966, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 24, 59, 71, 74, 115, 150, 175, 210, 291, 323, 384, 431, 527, 530, 552, 564, 592, 632, 633, 678, 684, 686, 711, 716, 725, 745, 750, 758, 794, 795, 817, 829, 856, 970, 997}
[INFO] [stdout] b items: {6, 15, 19, 50, 85, 116, 182, 188, 192, 233, 237, 295, 297, 302, 308, 338, 379, 391, 414, 419, 424, 435, 436, 466, 472, 475, 494, 507, 508, 525, 567, 569, 583, 586, 591, 592, 606, 612, 620, 627, 645, 651, 653, 664, 694, 709, 748, 795, 836, 845, 849, 858, 861, 881, 891, 915, 928, 933, 942, 982}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 998), fp: EncodedCountingMonoid(36, SumMonoid(18851)) }], item_sets: [ItemSet { range: Range(998, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 567), fp: EncodedCountingMonoid(30, SumMonoid(9208)) }, Fingerprint { range: Range(567, 998), fp: EncodedCountingMonoid(30, SumMonoid(22233)) }], item_sets: [ItemSet { range: Range(998, 3), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 291), fp: EncodedCountingMonoid(9, SumMonoid(881)) }, Fingerprint { range: Range(291, 567), fp: EncodedCountingMonoid(8, SumMonoid(3602)) }, Fingerprint { range: Range(567, 750), fp: EncodedCountingMonoid(10, SumMonoid(6802)) }, Fingerprint { range: Range(750, 998), fp: EncodedCountingMonoid(9, SumMonoid(7566)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 182), fp: EncodedCountingMonoid(6, SumMonoid(291)) }, Fingerprint { range: Range(182, 291), fp: EncodedCountingMonoid(5, SumMonoid(1032)) }, Fingerprint { range: Range(291, 435), fp: EncodedCountingMonoid(10, SumMonoid(3567)) }, Fingerprint { range: Range(435, 567), fp: EncodedCountingMonoid(9, SumMonoid(4318)) }, Fingerprint { range: Range(567, 627), fp: EncodedCountingMonoid(9, SumMonoid(5326)) }, Fingerprint { range: Range(627, 750), fp: EncodedCountingMonoid(8, SumMonoid(5391)) }, Fingerprint { range: Range(750, 891), fp: EncodedCountingMonoid(7, SumMonoid(5925)) }, Fingerprint { range: Range(891, 998), fp: EncodedCountingMonoid(6, SumMonoid(5591)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 74), fp: EncodedCountingMonoid(4, SumMonoid(157)) }, Fingerprint { range: Range(74, 182), fp: EncodedCountingMonoid(4, SumMonoid(514)) }, Fingerprint { range: Range(627, 711), fp: EncodedCountingMonoid(5, SumMonoid(3313)) }, Fingerprint { range: Range(711, 750), fp: EncodedCountingMonoid(4, SumMonoid(2897)) }, Fingerprint { range: Range(750, 817), fp: EncodedCountingMonoid(4, SumMonoid(3097)) }, Fingerprint { range: Range(817, 891), fp: EncodedCountingMonoid(3, SumMonoid(2502)) }], item_sets: [ItemSet { range: Range(182, 291), items: [210], want_response: true }, ItemSet { range: Range(291, 384), items: [291, 323], want_response: true }, ItemSet { range: Range(384, 435), items: [384, 431], want_response: true }, ItemSet { range: Range(435, 552), items: [527, 530], want_response: true }, ItemSet { range: Range(552, 567), items: [552, 564], want_response: true }, ItemSet { range: Range(567, 627), items: [592], want_response: true }, ItemSet { range: Range(891, 998), items: [970, 997], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(627, 664), fp: EncodedCountingMonoid(4, SumMonoid(2576)) }, Fingerprint { range: Range(664, 711), fp: EncodedCountingMonoid(3, SumMonoid(2067)) }, Fingerprint { range: Range(817, 858), fp: EncodedCountingMonoid(3, SumMonoid(2530)) }, Fingerprint { range: Range(858, 891), fp: EncodedCountingMonoid(3, SumMonoid(2600)) }], item_sets: [ItemSet { range: Range(182, 291), items: [182, 188, 192, 233, 237], want_response: false }, ItemSet { range: Range(291, 384), items: [295, 297, 302, 308, 338, 379], want_response: false }, ItemSet { range: Range(384, 435), items: [391, 414, 419, 424], want_response: false }, ItemSet { range: Range(435, 552), items: [435, 436, 466, 472, 475, 494, 507, 508, 525], want_response: false }, ItemSet { range: Range(552, 567), items: [], want_response: false }, ItemSet { range: Range(567, 627), items: [567, 569, 583, 586, 591, 592, 606, 612, 620], want_response: false }, ItemSet { range: Range(891, 998), items: [891, 915, 928, 933, 942, 982], want_response: false }, ItemSet { range: Range(3, 19), items: [6, 15], want_response: true }, ItemSet { range: Range(19, 74), items: [19, 50], want_response: true }, ItemSet { range: Range(74, 182), items: [85, 116], want_response: true }, ItemSet { range: Range(711, 750), items: [748], want_response: true }, ItemSet { range: Range(750, 817), items: [795], want_response: true }], wants: [210, 291, 323, 384, 431, 527, 530, 552, 564, 970, 997], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 19), items: [3], want_response: false }, ItemSet { range: Range(19, 74), items: [24, 59, 71], want_response: false }, ItemSet { range: Range(74, 182), items: [74, 115, 150, 175], want_response: false }, ItemSet { range: Range(711, 750), items: [711, 716, 725, 745], want_response: false }, ItemSet { range: Range(750, 817), items: [750, 758, 794, 795], want_response: false }, ItemSet { range: Range(627, 664), items: [632, 633], want_response: true }, ItemSet { range: Range(664, 686), items: [678, 684], want_response: true }, ItemSet { range: Range(686, 711), items: [686], want_response: true }, ItemSet { range: Range(817, 856), items: [817, 829], want_response: true }, ItemSet { range: Range(856, 858), items: [856], want_response: true }, ItemSet { range: Range(858, 891), items: [], want_response: true }], wants: [182, 188, 192, 233, 237, 295, 297, 302, 308, 338, 379, 391, 414, 419, 424, 435, 436, 466, 472, 475, 494, 507, 508, 525, 567, 569, 583, 586, 591, 606, 612, 620, 891, 915, 928, 933, 942, 982, 6, 15, 19, 50, 85, 116, 748], provide: [(210, true), (291, true), (323, true), (384, true), (431, true), (527, true), (530, true), (552, true), (564, true), (970, true), (997, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(627, 664), items: [627, 645, 651, 653], want_response: false }, ItemSet { range: Range(664, 686), items: [664], want_response: false }, ItemSet { range: Range(686, 711), items: [694, 709], want_response: false }, ItemSet { range: Range(817, 856), items: [836, 845, 849], want_response: false }, ItemSet { range: Range(856, 858), items: [], want_response: false }, ItemSet { range: Range(858, 891), items: [858, 861, 881], want_response: false }], wants: [3, 24, 59, 71, 74, 115, 150, 175, 711, 716, 725, 745, 750, 758, 794, 632, 633, 678, 684, 686, 817, 829, 856], provide: [(182, true), (188, true), (192, true), (233, true), (237, true), (295, true), (297, true), (302, true), (308, true), (338, true), (379, true), (391, true), (414, true), (419, true), (424, true), (435, true), (436, true), (466, true), (472, true), (475, true), (494, true), (507, true), (508, true), (525, true), (567, true), (569, true), (583, true), (586, true), (591, true), (606, true), (612, true), (620, true), (891, true), (915, true), (928, true), (933, true), (942, true), (982, true), (6, true), (15, true), (19, true), (50, true), (85, true), (116, true), (748, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [627, 645, 651, 653, 664, 694, 709, 836, 845, 849, 858, 861, 881], provide: [(3, true), (24, true), (59, true), (71, true), (74, true), (115, true), (150, true), (175, true), (711, true), (716, true), (725, true), (745, true), (750, true), (758, true), (794, true), (632, true), (633, true), (678, true), (684, true), (686, true), (817, true), (829, true), (856, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(627, true), (645, true), (651, true), (653, true), (664, true), (694, true), (709, true), (836, true), (845, true), (849, true), (858, true), (861, true), (881, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 24, 59, 71, 74, 115, 150, 175, 210, 291, 323, 384, 431, 527, 530, 552, 564, 592, 632, 633, 678, 684, 686, 711, 716, 725, 745, 750, 758, 794, 795, 817, 829, 856, 970, 997} + [182, 188, 192, 233, 237, 295, 297, 302, 308, 338, 379, 391, 414, 419, 424, 435, 436, 466, 472, 475, 494, 507, 508, 525, 567, 569, 583, 586, 591, 606, 612, 620, 891, 915, 928, 933, 942, 982, 6, 15, 19, 50, 85, 116, 748, 627, 645, 651, 653, 664, 694, 709, 836, 845, 849, 858, 861, 881]
[INFO] [stdout] b all: {6, 15, 19, 50, 85, 116, 182, 188, 192, 233, 237, 295, 297, 302, 308, 338, 379, 391, 414, 419, 424, 435, 436, 466, 472, 475, 494, 507, 508, 525, 567, 569, 583, 586, 591, 592, 606, 612, 620, 627, 645, 651, 653, 664, 694, 709, 748, 795, 836, 845, 849, 858, 861, 881, 891, 915, 928, 933, 942, 982} + [210, 291, 323, 384, 431, 527, 530, 552, 564, 970, 997, 3, 24, 59, 71, 74, 115, 150, 175, 711, 716, 725, 745, 750, 758, 794, 632, 633, 678, 684, 686, 817, 829, 856]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 6, 15, 19, 24, 50, 59, 71, 74, 85, 115, 116, 150, 175, 182, 188, 192, 210, 233, 237, 291, 295, 297, 302, 308, 323, 338, 379, 384, 391, 414, 419, 424, 431, 435, 436, 466, 472, 475, 494, 507, 508, 525, 527, 530, 552, 564, 567, 569, 583, 586, 591, 592, 606, 612, 620, 627, 632, 633, 645, 651, 653, 664, 678, 684, 686, 694, 709, 711, 716, 725, 745, 748, 750, 758, 794, 795, 817, 829, 836, 845, 849, 856, 858, 861, 881, 891, 915, 928, 933, 942, 970, 982, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 6, 15, 19, 24, 50, 59, 71, 74, 85, 115, 116, 150, 175, 182, 188, 192, 210, 233, 237, 291, 295, 297, 302, 308, 323, 338, 379, 384, 391, 414, 419, 424, 431, 435, 436, 466, 472, 475, 494, 507, 508, 525, 527, 530, 552, 564, 567, 569, 583, 586, 591, 592, 606, 612, 620, 627, 632, 633, 645, 651, 653, 664, 678, 684, 686, 694, 709, 711, 716, 725, 745, 748, 750, 758, 794, 795, 817, 829, 836, 845, 849, 856, 858, 861, 881, 891, 915, 928, 933, 942, 970, 982, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 6, 15, 19, 24, 50, 59, 71, 74, 85, 115, 116, 150, 175, 182, 188, 192, 210, 233, 237, 291, 295, 297, 302, 308, 323, 338, 379, 384, 391, 414, 419, 424, 431, 435, 436, 466, 472, 475, 494, 507, 508, 525, 527, 530, 552, 564, 567, 569, 583, 586, 591, 592, 606, 612, 620, 627, 632, 633, 645, 651, 653, 664, 678, 684, 686, 694, 709, 711, 716, 725, 745, 748, 750, 758, 794, 795, 817, 829, 836, 845, 849, 856, 858, 861, 881, 891, 915, 928, 933, 942, 970, 982, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 30, 40, 51, 85, 104, 116, 131, 140, 145, 157, 158, 166, 171, 186, 239, 248, 253, 264, 270, 281, 297, 332, 335, 343, 361, 362, 368, 370, 380, 383, 415, 428, 443, 467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640, 674, 696, 708, 719, 721, 742, 747, 765, 773, 787, 788, 797, 814, 818, 828, 838, 842, 859, 878, 880, 881, 904, 914, 937, 947, 955, 957, 965, 991, 999}
[INFO] [stdout] b items: {24, 27, 31, 84, 110, 174, 216, 220, 302, 323, 384, 422, 456, 657, 666, 677, 681, 701, 759, 789, 794, 821, 837, 883, 891, 952}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 1000), fp: EncodedCountingMonoid(81, SumMonoid(42265)) }], item_sets: [ItemSet { range: Range(1000, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 657), fp: EncodedCountingMonoid(13, SumMonoid(2773)) }, Fingerprint { range: Range(657, 1000), fp: EncodedCountingMonoid(13, SumMonoid(10108)) }], item_sets: [ItemSet { range: Range(1000, 5), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 362), fp: EncodedCountingMonoid(26, SumMonoid(4908)) }, Fingerprint { range: Range(362, 657), fp: EncodedCountingMonoid(25, SumMonoid(12233)) }, Fingerprint { range: Range(657, 838), fp: EncodedCountingMonoid(15, SumMonoid(11377)) }, Fingerprint { range: Range(838, 1000), fp: EncodedCountingMonoid(15, SumMonoid(13747)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 174), fp: EncodedCountingMonoid(5, SumMonoid(276)) }, Fingerprint { range: Range(174, 362), fp: EncodedCountingMonoid(5, SumMonoid(1235)) }, Fingerprint { range: Range(657, 759), fp: EncodedCountingMonoid(5, SumMonoid(3382)) }, Fingerprint { range: Range(759, 838), fp: EncodedCountingMonoid(5, SumMonoid(4000)) }], item_sets: [ItemSet { range: Range(362, 456), items: [384, 422], want_response: true }, ItemSet { range: Range(456, 657), items: [456], want_response: true }, ItemSet { range: Range(838, 952), items: [883, 891], want_response: true }, ItemSet { range: Range(952, 1000), items: [952], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 131), fp: EncodedCountingMonoid(7, SumMonoid(431)) }, Fingerprint { range: Range(131, 174), fp: EncodedCountingMonoid(7, SumMonoid(1068)) }, Fingerprint { range: Range(174, 281), fp: EncodedCountingMonoid(6, SumMonoid(1460)) }, Fingerprint { range: Range(281, 362), fp: EncodedCountingMonoid(6, SumMonoid(1949)) }, Fingerprint { range: Range(657, 721), fp: EncodedCountingMonoid(4, SumMonoid(2797)) }, Fingerprint { range: Range(721, 759), fp: EncodedCountingMonoid(3, SumMonoid(2210)) }, Fingerprint { range: Range(759, 797), fp: EncodedCountingMonoid(4, SumMonoid(3113)) }, Fingerprint { range: Range(797, 838), fp: EncodedCountingMonoid(4, SumMonoid(3257)) }], item_sets: [ItemSet { range: Range(362, 456), items: [362, 368, 370, 380, 383, 415, 428, 443], want_response: false }, ItemSet { range: Range(456, 657), items: [467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640], want_response: false }, ItemSet { range: Range(838, 952), items: [838, 842, 859, 878, 880, 881, 904, 914, 937, 947], want_response: false }, ItemSet { range: Range(952, 1000), items: [955, 957, 965, 991, 999], want_response: false }], wants: [384, 422, 456, 883, 891, 952], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 84), fp: EncodedCountingMonoid(3, SumMonoid(82)) }, Fingerprint { range: Range(657, 681), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }], item_sets: [ItemSet { range: Range(84, 131), items: [84, 110], want_response: true }, ItemSet { range: Range(131, 174), items: [], want_response: true }, ItemSet { range: Range(174, 220), items: [174, 216], want_response: true }, ItemSet { range: Range(220, 281), items: [220], want_response: true }, ItemSet { range: Range(281, 362), items: [302, 323], want_response: true }, ItemSet { range: Range(681, 721), items: [681, 701], want_response: true }, ItemSet { range: Range(721, 759), items: [], want_response: true }, ItemSet { range: Range(759, 794), items: [759, 789], want_response: true }, ItemSet { range: Range(794, 797), items: [794], want_response: true }, ItemSet { range: Range(797, 838), items: [821, 837], want_response: true }], wants: [362, 368, 370, 380, 383, 415, 428, 443, 467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640, 838, 842, 859, 878, 880, 881, 904, 914, 937, 947, 955, 957, 965, 991, 999], provide: [(384, true), (422, true), (456, true), (883, true), (891, true), (952, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(84, 131), items: [85, 104, 116], want_response: false }, ItemSet { range: Range(131, 174), items: [131, 140, 145, 157, 158, 166, 171], want_response: false }, ItemSet { range: Range(174, 220), items: [186], want_response: false }, ItemSet { range: Range(220, 281), items: [239, 248, 253, 264, 270], want_response: false }, ItemSet { range: Range(281, 362), items: [281, 297, 332, 335, 343, 361], want_response: false }, ItemSet { range: Range(681, 721), items: [696, 708, 719], want_response: false }, ItemSet { range: Range(721, 759), items: [721, 742, 747], want_response: false }, ItemSet { range: Range(759, 794), items: [765, 773, 787, 788], want_response: false }, ItemSet { range: Range(794, 797), items: [], want_response: false }, ItemSet { range: Range(797, 838), items: [797, 814, 818, 828], want_response: false }, ItemSet { range: Range(5, 40), items: [5, 30], want_response: true }, ItemSet { range: Range(40, 84), items: [40, 51], want_response: true }, ItemSet { range: Range(657, 681), items: [674], want_response: true }], wants: [84, 110, 174, 216, 220, 302, 323, 681, 701, 759, 789, 794, 821, 837], provide: [(362, true), (368, true), (370, true), (380, true), (383, true), (415, true), (428, true), (443, true), (467, true), (470, true), (474, true), (476, true), (508, true), (512, true), (517, true), (527, true), (528, true), (533, true), (535, true), (539, true), (541, true), (600, true), (604, true), (613, true), (640, true), (838, true), (842, true), (859, true), (878, true), (880, true), (881, true), (904, true), (914, true), (937, true), (947, true), (955, true), (957, true), (965, true), (991, true), (999, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 40), items: [24, 27, 31], want_response: false }, ItemSet { range: Range(40, 84), items: [], want_response: false }, ItemSet { range: Range(657, 681), items: [657, 666, 677], want_response: false }], wants: [85, 104, 116, 131, 140, 145, 157, 158, 166, 171, 186, 239, 248, 253, 264, 270, 281, 297, 332, 335, 343, 361, 696, 708, 719, 721, 742, 747, 765, 773, 787, 788, 797, 814, 818, 828, 5, 30, 40, 51, 674], provide: [(84, true), (110, true), (174, true), (216, true), (220, true), (302, true), (323, true), (681, true), (701, true), (759, true), (789, true), (794, true), (821, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [24, 27, 31, 657, 666, 677], provide: [(85, true), (104, true), (116, true), (131, true), (140, true), (145, true), (157, true), (158, true), (166, true), (171, true), (186, true), (239, true), (248, true), (253, true), (264, true), (270, true), (281, true), (297, true), (332, true), (335, true), (343, true), (361, true), (696, true), (708, true), (719, true), (721, true), (742, true), (747, true), (765, true), (773, true), (787, true), (788, true), (797, true), (814, true), (818, true), (828, true), (5, true), (30, true), (40, true), (51, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(24, true), (27, true), (31, true), (657, true), (666, true), (677, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 30, 40, 51, 85, 104, 116, 131, 140, 145, 157, 158, 166, 171, 186, 239, 248, 253, 264, 270, 281, 297, 332, 335, 343, 361, 362, 368, 370, 380, 383, 415, 428, 443, 467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640, 674, 696, 708, 719, 721, 742, 747, 765, 773, 787, 788, 797, 814, 818, 828, 838, 842, 859, 878, 880, 881, 904, 914, 937, 947, 955, 957, 965, 991, 999} + [384, 422, 456, 883, 891, 952, 84, 110, 174, 216, 220, 302, 323, 681, 701, 759, 789, 794, 821, 837, 24, 27, 31, 657, 666, 677]
[INFO] [stdout] b all: {24, 27, 31, 84, 110, 174, 216, 220, 302, 323, 384, 422, 456, 657, 666, 677, 681, 701, 759, 789, 794, 821, 837, 883, 891, 952} + [362, 368, 370, 380, 383, 415, 428, 443, 467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640, 838, 842, 859, 878, 880, 881, 904, 914, 937, 947, 955, 957, 965, 991, 999, 85, 104, 116, 131, 140, 145, 157, 158, 166, 171, 186, 239, 248, 253, 264, 270, 281, 297, 332, 335, 343, 361, 696, 708, 719, 721, 742, 747, 765, 773, 787, 788, 797, 814, 818, 828, 5, 30, 40, 51, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 24, 27, 30, 31, 40, 51, 84, 85, 104, 110, 116, 131, 140, 145, 157, 158, 166, 171, 174, 186, 216, 220, 239, 248, 253, 264, 270, 281, 297, 302, 323, 332, 335, 343, 361, 362, 368, 370, 380, 383, 384, 415, 422, 428, 443, 456, 467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640, 657, 666, 674, 677, 681, 696, 701, 708, 719, 721, 742, 747, 759, 765, 773, 787, 788, 789, 794, 797, 814, 818, 821, 828, 837, 838, 842, 859, 878, 880, 881, 883, 891, 904, 914, 937, 947, 952, 955, 957, 965, 991, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 24, 27, 30, 31, 40, 51, 84, 85, 104, 110, 116, 131, 140, 145, 157, 158, 166, 171, 174, 186, 216, 220, 239, 248, 253, 264, 270, 281, 297, 302, 323, 332, 335, 343, 361, 362, 368, 370, 380, 383, 384, 415, 422, 428, 443, 456, 467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640, 657, 666, 674, 677, 681, 696, 701, 708, 719, 721, 742, 747, 759, 765, 773, 787, 788, 789, 794, 797, 814, 818, 821, 828, 837, 838, 842, 859, 878, 880, 881, 883, 891, 904, 914, 937, 947, 952, 955, 957, 965, 991, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 24, 27, 30, 31, 40, 51, 84, 85, 104, 110, 116, 131, 140, 145, 157, 158, 166, 171, 174, 186, 216, 220, 239, 248, 253, 264, 270, 281, 297, 302, 323, 332, 335, 343, 361, 362, 368, 370, 380, 383, 384, 415, 422, 428, 443, 456, 467, 470, 474, 476, 508, 512, 517, 527, 528, 533, 535, 539, 541, 600, 604, 613, 640, 657, 666, 674, 677, 681, 696, 701, 708, 719, 721, 742, 747, 759, 765, 773, 787, 788, 789, 794, 797, 814, 818, 821, 828, 837, 838, 842, 859, 878, 880, 881, 883, 891, 904, 914, 937, 947, 952, 955, 957, 965, 991, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {24, 25, 32, 35, 58, 69, 77, 98, 100, 110, 156, 161, 199, 205, 212, 214, 223, 277, 281, 282, 286, 289, 297, 300, 301, 309, 313, 314, 329, 359, 360, 366, 370, 375, 409, 452, 459, 472, 484, 496, 509, 514, 525, 584, 586, 602, 606, 686, 690, 692, 696, 709, 731, 742, 745, 781, 784, 787, 817, 833, 836, 844, 848, 891, 902, 906, 924, 947, 948}
[INFO] [stdout] b items: {7, 14, 44, 50, 53, 59, 79, 86, 87, 90, 106, 130, 131, 163, 175, 184, 198, 200, 213, 224, 225, 238, 239, 261, 285, 286, 332, 349, 360, 361, 370, 372, 386, 389, 395, 400, 406, 407, 420, 449, 451, 453, 475, 488, 490, 520, 523, 531, 556, 557, 560, 569, 575, 588, 604, 621, 624, 627, 638, 639, 644, 645, 654, 671, 676, 688, 696, 697, 698, 700, 715, 728, 777, 802, 822, 823, 838, 869, 884, 886, 890, 897, 899, 910, 917, 933, 939, 948, 962, 964, 970, 986, 992}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(24, 949), fp: EncodedCountingMonoid(69, SumMonoid(31843)) }], item_sets: [ItemSet { range: Range(949, 24), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(24, 520), fp: EncodedCountingMonoid(43, SumMonoid(11559)) }, Fingerprint { range: Range(520, 949), fp: EncodedCountingMonoid(43, SumMonoid(30978)) }], item_sets: [ItemSet { range: Range(949, 24), items: [962, 964, 970, 986, 992, 7, 14], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(24, 289), fp: EncodedCountingMonoid(21, SumMonoid(3124)) }, Fingerprint { range: Range(289, 520), fp: EncodedCountingMonoid(21, SumMonoid(8077)) }, Fingerprint { range: Range(520, 784), fp: EncodedCountingMonoid(14, SumMonoid(9375)) }, Fingerprint { range: Range(784, 949), fp: EncodedCountingMonoid(13, SumMonoid(11267)) }], item_sets: [], wants: [962, 964, 970, 986, 992, 7, 14], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(24, 175), fp: EncodedCountingMonoid(12, SumMonoid(1078)) }, Fingerprint { range: Range(175, 289), fp: EncodedCountingMonoid(12, SumMonoid(2728)) }, Fingerprint { range: Range(289, 406), fp: EncodedCountingMonoid(10, SumMonoid(3714)) }, Fingerprint { range: Range(406, 520), fp: EncodedCountingMonoid(9, SumMonoid(4039)) }, Fingerprint { range: Range(520, 639), fp: EncodedCountingMonoid(14, SumMonoid(8093)) }, Fingerprint { range: Range(639, 784), fp: EncodedCountingMonoid(14, SumMonoid(9628)) }, Fingerprint { range: Range(784, 897), fp: EncodedCountingMonoid(8, SumMonoid(6814)) }, Fingerprint { range: Range(897, 949), fp: EncodedCountingMonoid(7, SumMonoid(6443)) }], item_sets: [], wants: [], provide: [(962, true), (964, true), (970, true), (986, true), (992, true), (7, true), (14, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(24, 77), fp: EncodedCountingMonoid(6, SumMonoid(243)) }, Fingerprint { range: Range(77, 175), fp: EncodedCountingMonoid(6, SumMonoid(702)) }, Fingerprint { range: Range(175, 277), fp: EncodedCountingMonoid(5, SumMonoid(1053)) }, Fingerprint { range: Range(277, 289), fp: EncodedCountingMonoid(4, SumMonoid(1126)) }, Fingerprint { range: Range(289, 329), fp: EncodedCountingMonoid(7, SumMonoid(2123)) }, Fingerprint { range: Range(329, 406), fp: EncodedCountingMonoid(6, SumMonoid(2159)) }, Fingerprint { range: Range(406, 484), fp: EncodedCountingMonoid(4, SumMonoid(1792)) }, Fingerprint { range: Range(484, 520), fp: EncodedCountingMonoid(4, SumMonoid(2003)) }, Fingerprint { range: Range(520, 602), fp: EncodedCountingMonoid(3, SumMonoid(1695)) }, Fingerprint { range: Range(639, 731), fp: EncodedCountingMonoid(5, SumMonoid(3473)) }, Fingerprint { range: Range(731, 784), fp: EncodedCountingMonoid(4, SumMonoid(2999)) }, Fingerprint { range: Range(784, 836), fp: EncodedCountingMonoid(4, SumMonoid(3221)) }, Fingerprint { range: Range(836, 897), fp: EncodedCountingMonoid(4, SumMonoid(3419)) }, Fingerprint { range: Range(897, 947), fp: EncodedCountingMonoid(3, SumMonoid(2732)) }], item_sets: [ItemSet { range: Range(602, 639), items: [602, 606], want_response: true }, ItemSet { range: Range(947, 949), items: [947, 948], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(77, 106), fp: EncodedCountingMonoid(4, SumMonoid(342)) }, Fingerprint { range: Range(106, 175), fp: EncodedCountingMonoid(4, SumMonoid(530)) }, Fingerprint { range: Range(175, 224), fp: EncodedCountingMonoid(5, SumMonoid(970)) }, Fingerprint { range: Range(224, 277), fp: EncodedCountingMonoid(5, SumMonoid(1187)) }, Fingerprint { range: Range(329, 372), fp: EncodedCountingMonoid(5, SumMonoid(1772)) }, Fingerprint { range: Range(372, 406), fp: EncodedCountingMonoid(5, SumMonoid(1942)) }, Fingerprint { range: Range(406, 451), fp: EncodedCountingMonoid(4, SumMonoid(1682)) }, Fingerprint { range: Range(451, 484), fp: EncodedCountingMonoid(3, SumMonoid(1379)) }, Fingerprint { range: Range(520, 560), fp: EncodedCountingMonoid(5, SumMonoid(2687)) }, Fingerprint { range: Range(560, 602), fp: EncodedCountingMonoid(4, SumMonoid(2292)) }, Fingerprint { range: Range(639, 696), fp: EncodedCountingMonoid(7, SumMonoid(4617)) }, Fingerprint { range: Range(696, 731), fp: EncodedCountingMonoid(6, SumMonoid(4234)) }, Fingerprint { range: Range(836, 886), fp: EncodedCountingMonoid(3, SumMonoid(2591)) }, Fingerprint { range: Range(897, 917), fp: EncodedCountingMonoid(3, SumMonoid(2706)) }, Fingerprint { range: Range(917, 947), fp: EncodedCountingMonoid(3, SumMonoid(2789)) }], item_sets: [ItemSet { range: Range(602, 639), items: [604, 621, 624, 627, 638], want_response: false }, ItemSet { range: Range(947, 949), items: [948], want_response: false }, ItemSet { range: Range(24, 53), items: [44, 50], want_response: true }, ItemSet { range: Range(53, 77), items: [53, 59], want_response: true }, ItemSet { range: Range(277, 289), items: [285, 286], want_response: true }, ItemSet { range: Range(289, 329), items: [], want_response: true }, ItemSet { range: Range(484, 520), items: [488, 490], want_response: true }, ItemSet { range: Range(731, 784), items: [777], want_response: true }, ItemSet { range: Range(784, 823), items: [802, 822], want_response: true }, ItemSet { range: Range(823, 836), items: [823], want_response: true }, ItemSet { range: Range(886, 897), items: [886, 890], want_response: true }], wants: [602, 606, 947], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(175, 214), fp: EncodedCountingMonoid(3, SumMonoid(616)) }, Fingerprint { range: Range(329, 366), fp: EncodedCountingMonoid(3, SumMonoid(1048)) }], item_sets: [ItemSet { range: Range(24, 53), items: [24, 25, 32, 35], want_response: false }, ItemSet { range: Range(53, 77), items: [58, 69], want_response: false }, ItemSet { range: Range(277, 289), items: [277, 281, 282, 286], want_response: false }, ItemSet { range: Range(289, 329), items: [289, 297, 300, 301, 309, 313, 314], want_response: false }, ItemSet { range: Range(484, 520), items: [484, 496, 509, 514], want_response: false }, ItemSet { range: Range(731, 784), items: [731, 742, 745, 781], want_response: false }, ItemSet { range: Range(784, 823), items: [784, 787, 817], want_response: false }, ItemSet { range: Range(823, 836), items: [833], want_response: false }, ItemSet { range: Range(886, 897), items: [891], want_response: false }, ItemSet { range: Range(77, 100), items: [77, 98], want_response: true }, ItemSet { range: Range(100, 106), items: [100], want_response: true }, ItemSet { range: Range(106, 161), items: [110, 156], want_response: true }, ItemSet { range: Range(161, 175), items: [161], want_response: true }, ItemSet { range: Range(214, 224), items: [214, 223], want_response: true }, ItemSet { range: Range(224, 277), items: [], want_response: true }, ItemSet { range: Range(366, 372), items: [366, 370], want_response: true }, ItemSet { range: Range(372, 406), items: [375], want_response: true }, ItemSet { range: Range(406, 451), items: [409], want_response: true }, ItemSet { range: Range(451, 472), items: [452, 459], want_response: true }, ItemSet { range: Range(472, 484), items: [472], want_response: true }, ItemSet { range: Range(520, 560), items: [525], want_response: true }, ItemSet { range: Range(560, 602), items: [584, 586], want_response: true }, ItemSet { range: Range(639, 692), items: [686, 690], want_response: true }, ItemSet { range: Range(692, 696), items: [692], want_response: true }, ItemSet { range: Range(696, 731), items: [696, 709], want_response: true }, ItemSet { range: Range(836, 848), items: [836, 844], want_response: true }, ItemSet { range: Range(848, 886), items: [848], want_response: true }, ItemSet { range: Range(897, 917), items: [902, 906], want_response: true }, ItemSet { range: Range(917, 947), items: [924], want_response: true }], wants: [604, 621, 624, 627, 638, 44, 50, 53, 59, 285, 488, 490, 777, 802, 822, 823, 886, 890], provide: [(602, true), (606, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(175, 200), fp: EncodedCountingMonoid(3, SumMonoid(557)) }], item_sets: [ItemSet { range: Range(77, 100), items: [79, 86, 87, 90], want_response: false }, ItemSet { range: Range(100, 106), items: [], want_response: false }, ItemSet { range: Range(106, 161), items: [106, 130, 131], want_response: false }, ItemSet { range: Range(161, 175), items: [163], want_response: false }, ItemSet { range: Range(214, 224), items: [], want_response: false }, ItemSet { range: Range(224, 277), items: [224, 225, 238, 239, 261], want_response: false }, ItemSet { range: Range(366, 372), items: [370], want_response: false }, ItemSet { range: Range(372, 406), items: [372, 386, 389, 395, 400], want_response: false }, ItemSet { range: Range(406, 451), items: [406, 407, 420, 449], want_response: false }, ItemSet { range: Range(451, 472), items: [451, 453], want_response: false }, ItemSet { range: Range(472, 484), items: [475], want_response: false }, ItemSet { range: Range(520, 560), items: [520, 523, 531, 556, 557], want_response: false }, ItemSet { range: Range(560, 602), items: [560, 569, 575, 588], want_response: false }, ItemSet { range: Range(639, 692), items: [639, 644, 645, 654, 671, 676, 688], want_response: false }, ItemSet { range: Range(692, 696), items: [], want_response: false }, ItemSet { range: Range(696, 731), items: [696, 697, 698, 700, 715, 728], want_response: false }, ItemSet { range: Range(836, 848), items: [838], want_response: false }, ItemSet { range: Range(848, 886), items: [869, 884], want_response: false }, ItemSet { range: Range(897, 917), items: [897, 899, 910], want_response: false }, ItemSet { range: Range(917, 947), items: [917, 933, 939], want_response: false }, ItemSet { range: Range(200, 214), items: [200, 213], want_response: true }, ItemSet { range: Range(329, 360), items: [332, 349], want_response: true }, ItemSet { range: Range(360, 366), items: [360, 361], want_response: true }], wants: [24, 25, 32, 35, 58, 69, 277, 281, 282, 289, 297, 300, 301, 309, 313, 314, 484, 496, 509, 514, 731, 742, 745, 781, 784, 787, 817, 833, 891, 77, 98, 100, 110, 156, 161, 214, 223, 366, 375, 409, 452, 459, 472, 525, 584, 586, 686, 690, 692, 709, 836, 844, 848, 902, 906, 924], provide: [(604, true), (621, true), (624, true), (627, true), (638, true), (44, true), (50, true), (53, true), (59, true), (285, true), (488, true), (490, true), (777, true), (802, true), (822, true), (823, true), (886, true), (890, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(200, 214), items: [205, 212], want_response: false }, ItemSet { range: Range(329, 360), items: [329, 359], want_response: false }, ItemSet { range: Range(360, 366), items: [360], want_response: false }, ItemSet { range: Range(175, 200), items: [199], want_response: true }], wants: [79, 86, 87, 90, 106, 130, 131, 163, 224, 225, 238, 239, 261, 372, 386, 389, 395, 400, 406, 407, 420, 449, 451, 453, 475, 520, 523, 531, 556, 557, 560, 569, 575, 588, 639, 644, 645, 654, 671, 676, 688, 697, 698, 700, 715, 728, 838, 869, 884, 897, 899, 910, 917, 933, 939, 200, 213, 332, 349, 361], provide: [(24, true), (25, true), (32, true), (35, true), (58, true), (69, true), (277, true), (281, true), (282, true), (289, true), (297, true), (300, true), (301, true), (309, true), (313, true), (314, true), (484, true), (496, true), (509, true), (514, true), (731, true), (742, true), (745, true), (781, true), (784, true), (787, true), (817, true), (833, true), (891, true), (77, true), (98, true), (100, true), (110, true), (156, true), (161, true), (214, true), (223, true), (366, true), (375, true), (409, true), (452, true), (459, true), (472, true), (525, true), (584, true), (586, true), (686, true), (690, true), (692, true), (709, true), (836, true), (844, true), (848, true), (902, true), (906, true), (924, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(175, 200), items: [175, 184, 198], want_response: false }], wants: [205, 212, 329, 359, 199], provide: [(79, true), (86, true), (87, true), (90, true), (106, true), (130, true), (131, true), (163, true), (224, true), (225, true), (238, true), (239, true), (261, true), (372, true), (386, true), (389, true), (395, true), (400, true), (406, true), (407, true), (420, true), (449, true), (451, true), (453, true), (475, true), (520, true), (523, true), (531, true), (556, true), (557, true), (560, true), (569, true), (575, true), (588, true), (639, true), (644, true), (645, true), (654, true), (671, true), (676, true), (688, true), (697, true), (698, true), (700, true), (715, true), (728, true), (838, true), (869, true), (884, true), (897, true), (899, true), (910, true), (917, true), (933, true), (939, true), (200, true), (213, true), (332, true), (349, true), (361, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [175, 184, 198], provide: [(205, true), (212, true), (329, true), (359, true), (199, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(175, true), (184, true), (198, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {24, 25, 32, 35, 58, 69, 77, 98, 100, 110, 156, 161, 199, 205, 212, 214, 223, 277, 281, 282, 286, 289, 297, 300, 301, 309, 313, 314, 329, 359, 360, 366, 370, 375, 409, 452, 459, 472, 484, 496, 509, 514, 525, 584, 586, 602, 606, 686, 690, 692, 696, 709, 731, 742, 745, 781, 784, 787, 817, 833, 836, 844, 848, 891, 902, 906, 924, 947, 948} + [962, 964, 970, 986, 992, 7, 14, 604, 621, 624, 627, 638, 44, 50, 53, 59, 285, 488, 490, 777, 802, 822, 823, 886, 890, 79, 86, 87, 90, 106, 130, 131, 163, 224, 225, 238, 239, 261, 372, 386, 389, 395, 400, 406, 407, 420, 449, 451, 453, 475, 520, 523, 531, 556, 557, 560, 569, 575, 588, 639, 644, 645, 654, 671, 676, 688, 697, 698, 700, 715, 728, 838, 869, 884, 897, 899, 910, 917, 933, 939, 200, 213, 332, 349, 361, 175, 184, 198]
[INFO] [stdout] b all: {7, 14, 44, 50, 53, 59, 79, 86, 87, 90, 106, 130, 131, 163, 175, 184, 198, 200, 213, 224, 225, 238, 239, 261, 285, 286, 332, 349, 360, 361, 370, 372, 386, 389, 395, 400, 406, 407, 420, 449, 451, 453, 475, 488, 490, 520, 523, 531, 556, 557, 560, 569, 575, 588, 604, 621, 624, 627, 638, 639, 644, 645, 654, 671, 676, 688, 696, 697, 698, 700, 715, 728, 777, 802, 822, 823, 838, 869, 884, 886, 890, 897, 899, 910, 917, 933, 939, 948, 962, 964, 970, 986, 992} + [602, 606, 947, 24, 25, 32, 35, 58, 69, 277, 281, 282, 289, 297, 300, 301, 309, 313, 314, 484, 496, 509, 514, 731, 742, 745, 781, 784, 787, 817, 833, 891, 77, 98, 100, 110, 156, 161, 214, 223, 366, 375, 409, 452, 459, 472, 525, 584, 586, 686, 690, 692, 709, 836, 844, 848, 902, 906, 924, 205, 212, 329, 359, 199]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 14, 24, 25, 32, 35, 44, 50, 53, 58, 59, 69, 77, 79, 86, 87, 90, 98, 100, 106, 110, 130, 131, 156, 161, 163, 175, 184, 198, 199, 200, 205, 212, 213, 214, 223, 224, 225, 238, 239, 261, 277, 281, 282, 285, 286, 289, 297, 300, 301, 309, 313, 314, 329, 332, 349, 359, 360, 361, 366, 370, 372, 375, 386, 389, 395, 400, 406, 407, 409, 420, 449, 451, 452, 453, 459, 472, 475, 484, 488, 490, 496, 509, 514, 520, 523, 525, 531, 556, 557, 560, 569, 575, 584, 586, 588, 602, 604, 606, 621, 624, 627, 638, 639, 644, 645, 654, 671, 676, 686, 688, 690, 692, 696, 697, 698, 700, 709, 715, 728, 731, 742, 745, 777, 781, 784, 787, 802, 817, 822, 823, 833, 836, 838, 844, 848, 869, 884, 886, 890, 891, 897, 899, 902, 906, 910, 917, 924, 933, 939, 947, 948, 962, 964, 970, 986, 992]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 14, 24, 25, 32, 35, 44, 50, 53, 58, 59, 69, 77, 79, 86, 87, 90, 98, 100, 106, 110, 130, 131, 156, 161, 163, 175, 184, 198, 199, 200, 205, 212, 213, 214, 223, 224, 225, 238, 239, 261, 277, 281, 282, 285, 286, 289, 297, 300, 301, 309, 313, 314, 329, 332, 349, 359, 360, 361, 366, 370, 372, 375, 386, 389, 395, 400, 406, 407, 409, 420, 449, 451, 452, 453, 459, 472, 475, 484, 488, 490, 496, 509, 514, 520, 523, 525, 531, 556, 557, 560, 569, 575, 584, 586, 588, 602, 604, 606, 621, 624, 627, 638, 639, 644, 645, 654, 671, 676, 686, 688, 690, 692, 696, 697, 698, 700, 709, 715, 728, 731, 742, 745, 777, 781, 784, 787, 802, 817, 822, 823, 833, 836, 838, 844, 848, 869, 884, 886, 890, 891, 897, 899, 902, 906, 910, 917, 924, 933, 939, 947, 948, 962, 964, 970, 986, 992], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 14, 24, 25, 32, 35, 44, 50, 53, 58, 59, 69, 77, 79, 86, 87, 90, 98, 100, 106, 110, 130, 131, 156, 161, 163, 175, 184, 198, 199, 200, 205, 212, 213, 214, 223, 224, 225, 238, 239, 261, 277, 281, 282, 285, 286, 289, 297, 300, 301, 309, 313, 314, 329, 332, 349, 359, 360, 361, 366, 370, 372, 375, 386, 389, 395, 400, 406, 407, 409, 420, 449, 451, 452, 453, 459, 472, 475, 484, 488, 490, 496, 509, 514, 520, 523, 525, 531, 556, 557, 560, 569, 575, 584, 586, 588, 602, 604, 606, 621, 624, 627, 638, 639, 644, 645, 654, 671, 676, 686, 688, 690, 692, 696, 697, 698, 700, 709, 715, 728, 731, 742, 745, 777, 781, 784, 787, 802, 817, 822, 823, 833, 836, 838, 844, 848, 869, 884, 886, 890, 891, 897, 899, 902, 906, 910, 917, 924, 933, 939, 947, 948, 962, 964, 970, 986, 992], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {136, 224, 563}
[INFO] [stdout] b items: {11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128, 143, 170, 177, 187, 192, 196, 201, 216, 222, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349, 352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551, 570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(136, 564), fp: EncodedCountingMonoid(3, SumMonoid(923)) }], item_sets: [ItemSet { range: Range(564, 136), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(136, 352), fp: EncodedCountingMonoid(19, SumMonoid(4700)) }, Fingerprint { range: Range(352, 564), fp: EncodedCountingMonoid(19, SumMonoid(8352)) }], item_sets: [ItemSet { range: Range(564, 136), items: [570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985, 11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 352), items: [136, 224], want_response: true }, ItemSet { range: Range(352, 564), items: [563], want_response: true }], wants: [570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985, 11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 352), items: [143, 170, 177, 187, 192, 196, 201, 216, 222, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349], want_response: false }, ItemSet { range: Range(352, 564), items: [352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551], want_response: false }], wants: [136, 224, 563], provide: [(570, true), (586, true), (603, true), (644, true), (647, true), (659, true), (663, true), (678, true), (689, true), (714, true), (723, true), (733, true), (737, true), (758, true), (773, true), (786, true), (797, true), (800, true), (815, true), (829, true), (846, true), (861, true), (864, true), (879, true), (883, true), (892, true), (894, true), (904, true), (906, true), (934, true), (951, true), (964, true), (971, true), (982, true), (985, true), (11, true), (18, true), (28, true), (60, true), (61, true), (66, true), (69, true), (80, true), (86, true), (90, true), (126, true), (128, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [143, 170, 177, 187, 192, 196, 201, 216, 222, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349, 352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551], provide: [(136, true), (224, true), (563, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(143, true), (170, true), (177, true), (187, true), (192, true), (196, true), (201, true), (216, true), (222, true), (237, true), (251, true), (253, true), (285, true), (307, true), (312, true), (330, true), (331, true), (341, true), (349, true), (352, true), (357, true), (367, true), (372, true), (373, true), (375, true), (387, true), (394, true), (406, true), (421, true), (474, true), (475, true), (492, true), (499, true), (503, true), (511, true), (517, true), (526, true), (551, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {136, 224, 563} + [570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985, 11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128, 143, 170, 177, 187, 192, 196, 201, 216, 222, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349, 352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551]
[INFO] [stdout] b all: {11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128, 143, 170, 177, 187, 192, 196, 201, 216, 222, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349, 352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551, 570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985} + [136, 224, 563]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128, 136, 143, 170, 177, 187, 192, 196, 201, 216, 222, 224, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349, 352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551, 563, 570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128, 136, 143, 170, 177, 187, 192, 196, 201, 216, 222, 224, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349, 352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551, 563, 570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [11, 18, 28, 60, 61, 66, 69, 80, 86, 90, 126, 128, 136, 143, 170, 177, 187, 192, 196, 201, 216, 222, 224, 237, 251, 253, 285, 307, 312, 330, 331, 341, 349, 352, 357, 367, 372, 373, 375, 387, 394, 406, 421, 474, 475, 492, 499, 503, 511, 517, 526, 551, 563, 570, 586, 603, 644, 647, 659, 663, 678, 689, 714, 723, 733, 737, 758, 773, 786, 797, 800, 815, 829, 846, 861, 864, 879, 883, 892, 894, 904, 906, 934, 951, 964, 971, 982, 985], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {82, 89, 116, 129, 165, 195, 232, 234, 253, 257, 263, 312, 326, 384, 395, 425, 439, 457, 476, 484, 492, 515, 522, 530, 556, 586, 597, 615, 626, 632, 643, 665, 681, 694, 755, 767, 769, 777, 800, 826, 886, 889, 890, 930, 934, 937, 958, 963, 964}
[INFO] [stdout] b items: {19, 21, 50, 82, 89, 101, 183, 185, 243, 248, 255, 287, 292, 316, 371, 377, 378, 383, 414, 415, 422, 449, 486, 498, 538, 543, 547, 552, 555, 586, 609, 654, 669, 674, 679, 680, 714, 746, 782, 788, 816, 852, 857, 887, 893, 918, 926, 955, 981}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(82, 965), fp: EncodedCountingMonoid(49, SumMonoid(27112)) }], item_sets: [ItemSet { range: Range(965, 82), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(82, 547), fp: EncodedCountingMonoid(23, SumMonoid(7555)) }, Fingerprint { range: Range(547, 965), fp: EncodedCountingMonoid(22, SumMonoid(16339)) }], item_sets: [ItemSet { range: Range(965, 82), items: [981, 19, 21, 50], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(82, 326), fp: EncodedCountingMonoid(12, SumMonoid(2327)) }, Fingerprint { range: Range(326, 547), fp: EncodedCountingMonoid(12, SumMonoid(5445)) }, Fingerprint { range: Range(547, 777), fp: EncodedCountingMonoid(13, SumMonoid(8586)) }, Fingerprint { range: Range(777, 965), fp: EncodedCountingMonoid(12, SumMonoid(10754)) }], item_sets: [], wants: [981, 19, 21, 50], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(82, 248), fp: EncodedCountingMonoid(6, SumMonoid(883)) }, Fingerprint { range: Range(248, 326), fp: EncodedCountingMonoid(5, SumMonoid(1398)) }, Fingerprint { range: Range(326, 422), fp: EncodedCountingMonoid(6, SumMonoid(2338)) }, Fingerprint { range: Range(422, 547), fp: EncodedCountingMonoid(6, SumMonoid(2936)) }, Fingerprint { range: Range(547, 669), fp: EncodedCountingMonoid(6, SumMonoid(3503)) }, Fingerprint { range: Range(669, 777), fp: EncodedCountingMonoid(6, SumMonoid(4162)) }, Fingerprint { range: Range(777, 887), fp: EncodedCountingMonoid(5, SumMonoid(4095)) }, Fingerprint { range: Range(887, 965), fp: EncodedCountingMonoid(5, SumMonoid(4579)) }], item_sets: [], wants: [], provide: [(981, true), (19, true), (21, true), (50, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(82, 165), fp: EncodedCountingMonoid(4, SumMonoid(416)) }, Fingerprint { range: Range(165, 248), fp: EncodedCountingMonoid(4, SumMonoid(826)) }, Fingerprint { range: Range(422, 492), fp: EncodedCountingMonoid(5, SumMonoid(2281)) }, Fingerprint { range: Range(492, 547), fp: EncodedCountingMonoid(4, SumMonoid(2059)) }, Fingerprint { range: Range(547, 626), fp: EncodedCountingMonoid(4, SumMonoid(2354)) }, Fingerprint { range: Range(626, 669), fp: EncodedCountingMonoid(4, SumMonoid(2566)) }, Fingerprint { range: Range(669, 767), fp: EncodedCountingMonoid(3, SumMonoid(2130)) }, Fingerprint { range: Range(887, 937), fp: EncodedCountingMonoid(4, SumMonoid(3643)) }, Fingerprint { range: Range(937, 965), fp: EncodedCountingMonoid(4, SumMonoid(3822)) }], item_sets: [ItemSet { range: Range(248, 263), items: [253, 257], want_response: true }, ItemSet { range: Range(263, 326), items: [263, 312], want_response: true }, ItemSet { range: Range(326, 395), items: [326, 384], want_response: true }, ItemSet { range: Range(395, 422), items: [395], want_response: true }, ItemSet { range: Range(767, 777), items: [767, 769], want_response: true }, ItemSet { range: Range(777, 826), items: [777, 800], want_response: true }, ItemSet { range: Range(826, 887), items: [826, 886], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(547, 586), fp: EncodedCountingMonoid(3, SumMonoid(1654)) }, Fingerprint { range: Range(669, 680), fp: EncodedCountingMonoid(3, SumMonoid(2022)) }, Fingerprint { range: Range(680, 767), fp: EncodedCountingMonoid(3, SumMonoid(2140)) }], item_sets: [ItemSet { range: Range(248, 263), items: [248, 255], want_response: false }, ItemSet { range: Range(263, 326), items: [287, 292, 316], want_response: false }, ItemSet { range: Range(326, 395), items: [371, 377, 378, 383], want_response: false }, ItemSet { range: Range(395, 422), items: [414, 415], want_response: false }, ItemSet { range: Range(767, 777), items: [], want_response: false }, ItemSet { range: Range(777, 826), items: [782, 788, 816], want_response: false }, ItemSet { range: Range(826, 887), items: [852, 857], want_response: false }, ItemSet { range: Range(82, 101), items: [82, 89], want_response: true }, ItemSet { range: Range(101, 165), items: [101], want_response: true }, ItemSet { range: Range(165, 243), items: [183, 185], want_response: true }, ItemSet { range: Range(243, 248), items: [243], want_response: true }, ItemSet { range: Range(422, 486), items: [422, 449], want_response: true }, ItemSet { range: Range(486, 492), items: [486], want_response: true }, ItemSet { range: Range(492, 543), items: [498, 538], want_response: true }, ItemSet { range: Range(543, 547), items: [543], want_response: true }, ItemSet { range: Range(586, 626), items: [586, 609], want_response: true }, ItemSet { range: Range(626, 669), items: [654], want_response: true }, ItemSet { range: Range(887, 918), items: [887, 893], want_response: true }, ItemSet { range: Range(918, 937), items: [918, 926], want_response: true }, ItemSet { range: Range(937, 965), items: [955], want_response: true }], wants: [253, 257, 263, 312, 326, 384, 395, 767, 769, 777, 800, 826, 886], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(82, 101), items: [82, 89], want_response: false }, ItemSet { range: Range(101, 165), items: [116, 129], want_response: false }, ItemSet { range: Range(165, 243), items: [165, 195, 232, 234], want_response: false }, ItemSet { range: Range(243, 248), items: [], want_response: false }, ItemSet { range: Range(422, 486), items: [425, 439, 457, 476, 484], want_response: false }, ItemSet { range: Range(486, 492), items: [], want_response: false }, ItemSet { range: Range(492, 543), items: [492, 515, 522, 530], want_response: false }, ItemSet { range: Range(543, 547), items: [], want_response: false }, ItemSet { range: Range(586, 626), items: [586, 597, 615], want_response: false }, ItemSet { range: Range(626, 669), items: [626, 632, 643, 665], want_response: false }, ItemSet { range: Range(887, 918), items: [889, 890], want_response: false }, ItemSet { range: Range(918, 937), items: [930, 934], want_response: false }, ItemSet { range: Range(937, 965), items: [937, 958, 963, 964], want_response: false }, ItemSet { range: Range(547, 586), items: [556], want_response: true }, ItemSet { range: Range(669, 680), items: [], want_response: true }, ItemSet { range: Range(680, 755), items: [681, 694], want_response: true }, ItemSet { range: Range(755, 767), items: [755], want_response: true }], wants: [248, 255, 287, 292, 316, 371, 377, 378, 383, 414, 415, 782, 788, 816, 852, 857, 101, 183, 185, 243, 422, 449, 486, 498, 538, 543, 609, 654, 887, 893, 918, 926, 955], provide: [(253, true), (257, true), (263, true), (312, true), (326, true), (384, true), (395, true), (767, true), (769, true), (777, true), (800, true), (826, true), (886, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(547, 586), items: [547, 552, 555], want_response: false }, ItemSet { range: Range(669, 680), items: [669, 674, 679], want_response: false }, ItemSet { range: Range(680, 755), items: [680, 714, 746], want_response: false }, ItemSet { range: Range(755, 767), items: [], want_response: false }], wants: [116, 129, 165, 195, 232, 234, 425, 439, 457, 476, 484, 492, 515, 522, 530, 597, 615, 626, 632, 643, 665, 889, 890, 930, 934, 937, 958, 963, 964, 556, 681, 694, 755], provide: [(248, true), (255, true), (287, true), (292, true), (316, true), (371, true), (377, true), (378, true), (383, true), (414, true), (415, true), (782, true), (788, true), (816, true), (852, true), (857, true), (101, true), (183, true), (185, true), (243, true), (422, true), (449, true), (486, true), (498, true), (538, true), (543, true), (609, true), (654, true), (887, true), (893, true), (918, true), (926, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [547, 552, 555, 669, 674, 679, 680, 714, 746], provide: [(116, true), (129, true), (165, true), (195, true), (232, true), (234, true), (425, true), (439, true), (457, true), (476, true), (484, true), (492, true), (515, true), (522, true), (530, true), (597, true), (615, true), (626, true), (632, true), (643, true), (665, true), (889, true), (890, true), (930, true), (934, true), (937, true), (958, true), (963, true), (964, true), (556, true), (681, true), (694, true), (755, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(547, true), (552, true), (555, true), (669, true), (674, true), (679, true), (680, true), (714, true), (746, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {82, 89, 116, 129, 165, 195, 232, 234, 253, 257, 263, 312, 326, 384, 395, 425, 439, 457, 476, 484, 492, 515, 522, 530, 556, 586, 597, 615, 626, 632, 643, 665, 681, 694, 755, 767, 769, 777, 800, 826, 886, 889, 890, 930, 934, 937, 958, 963, 964} + [981, 19, 21, 50, 248, 255, 287, 292, 316, 371, 377, 378, 383, 414, 415, 782, 788, 816, 852, 857, 101, 183, 185, 243, 422, 449, 486, 498, 538, 543, 609, 654, 887, 893, 918, 926, 955, 547, 552, 555, 669, 674, 679, 680, 714, 746]
[INFO] [stdout] b all: {19, 21, 50, 82, 89, 101, 183, 185, 243, 248, 255, 287, 292, 316, 371, 377, 378, 383, 414, 415, 422, 449, 486, 498, 538, 543, 547, 552, 555, 586, 609, 654, 669, 674, 679, 680, 714, 746, 782, 788, 816, 852, 857, 887, 893, 918, 926, 955, 981} + [253, 257, 263, 312, 326, 384, 395, 767, 769, 777, 800, 826, 886, 116, 129, 165, 195, 232, 234, 425, 439, 457, 476, 484, 492, 515, 522, 530, 597, 615, 626, 632, 643, 665, 889, 890, 930, 934, 937, 958, 963, 964, 556, 681, 694, 755]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [19, 21, 50, 82, 89, 101, 116, 129, 165, 183, 185, 195, 232, 234, 243, 248, 253, 255, 257, 263, 287, 292, 312, 316, 326, 371, 377, 378, 383, 384, 395, 414, 415, 422, 425, 439, 449, 457, 476, 484, 486, 492, 498, 515, 522, 530, 538, 543, 547, 552, 555, 556, 586, 597, 609, 615, 626, 632, 643, 654, 665, 669, 674, 679, 680, 681, 694, 714, 746, 755, 767, 769, 777, 782, 788, 800, 816, 826, 852, 857, 886, 887, 889, 890, 893, 918, 926, 930, 934, 937, 955, 958, 963, 964, 981]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [19, 21, 50, 82, 89, 101, 116, 129, 165, 183, 185, 195, 232, 234, 243, 248, 253, 255, 257, 263, 287, 292, 312, 316, 326, 371, 377, 378, 383, 384, 395, 414, 415, 422, 425, 439, 449, 457, 476, 484, 486, 492, 498, 515, 522, 530, 538, 543, 547, 552, 555, 556, 586, 597, 609, 615, 626, 632, 643, 654, 665, 669, 674, 679, 680, 681, 694, 714, 746, 755, 767, 769, 777, 782, 788, 800, 816, 826, 852, 857, 886, 887, 889, 890, 893, 918, 926, 930, 934, 937, 955, 958, 963, 964, 981], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [19, 21, 50, 82, 89, 101, 116, 129, 165, 183, 185, 195, 232, 234, 243, 248, 253, 255, 257, 263, 287, 292, 312, 316, 326, 371, 377, 378, 383, 384, 395, 414, 415, 422, 425, 439, 449, 457, 476, 484, 486, 492, 498, 515, 522, 530, 538, 543, 547, 552, 555, 556, 586, 597, 609, 615, 626, 632, 643, 654, 665, 669, 674, 679, 680, 681, 694, 714, 746, 755, 767, 769, 777, 782, 788, 800, 816, 826, 852, 857, 886, 887, 889, 890, 893, 918, 926, 930, 934, 937, 955, 958, 963, 964, 981], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 458, 778, 840, 869, 871}
[INFO] [stdout] b items: {118, 177, 182, 189, 294, 378, 432, 436, 527, 573, 636, 638, 645, 662, 763, 770, 806, 808, 846, 890, 895, 984, 985}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 872), fp: EncodedCountingMonoid(6, SumMonoid(3849)) }], item_sets: [ItemSet { range: Range(872, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 636), fp: EncodedCountingMonoid(10, SumMonoid(3306)) }, Fingerprint { range: Range(636, 872), fp: EncodedCountingMonoid(9, SumMonoid(6574)) }], item_sets: [ItemSet { range: Range(872, 33), items: [890, 895, 984, 985], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 636), items: [33, 458], want_response: true }, ItemSet { range: Range(636, 869), items: [778, 840], want_response: true }, ItemSet { range: Range(869, 872), items: [869, 871], want_response: true }], wants: [890, 895, 984, 985], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 636), items: [118, 177, 182, 189, 294, 378, 432, 436, 527, 573], want_response: false }, ItemSet { range: Range(636, 869), items: [636, 638, 645, 662, 763, 770, 806, 808, 846], want_response: false }, ItemSet { range: Range(869, 872), items: [], want_response: false }], wants: [33, 458, 778, 840, 869, 871], provide: [(890, true), (895, true), (984, true), (985, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [118, 177, 182, 189, 294, 378, 432, 436, 527, 573, 636, 638, 645, 662, 763, 770, 806, 808, 846], provide: [(33, true), (458, true), (778, true), (840, true), (869, true), (871, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(118, true), (177, true), (182, true), (189, true), (294, true), (378, true), (432, true), (436, true), (527, true), (573, true), (636, true), (638, true), (645, true), (662, true), (763, true), (770, true), (806, true), (808, true), (846, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 458, 778, 840, 869, 871} + [890, 895, 984, 985, 118, 177, 182, 189, 294, 378, 432, 436, 527, 573, 636, 638, 645, 662, 763, 770, 806, 808, 846]
[INFO] [stdout] b all: {118, 177, 182, 189, 294, 378, 432, 436, 527, 573, 636, 638, 645, 662, 763, 770, 806, 808, 846, 890, 895, 984, 985} + [33, 458, 778, 840, 869, 871]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [33, 118, 177, 182, 189, 294, 378, 432, 436, 458, 527, 573, 636, 638, 645, 662, 763, 770, 778, 806, 808, 840, 846, 869, 871, 890, 895, 984, 985]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [33, 118, 177, 182, 189, 294, 378, 432, 436, 458, 527, 573, 636, 638, 645, 662, 763, 770, 778, 806, 808, 840, 846, 869, 871, 890, 895, 984, 985], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [33, 118, 177, 182, 189, 294, 378, 432, 436, 458, 527, 573, 636, 638, 645, 662, 763, 770, 778, 806, 808, 840, 846, 869, 871, 890, 895, 984, 985], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {68, 130, 135, 147, 152, 167, 204, 207, 214, 244, 292, 303, 311, 317, 370, 387, 389, 407, 408, 427, 449, 569, 588, 643, 680, 704, 706, 708, 730, 779, 796, 821, 861, 997}
[INFO] [stdout] b items: {10, 14, 76, 94, 99, 125, 131, 144, 185, 195, 214, 225, 230, 268, 298, 302, 305, 328, 347, 402, 420, 434, 449, 462, 471, 500, 514, 539, 552, 566, 584, 654, 675, 684, 689, 690, 693, 695, 699, 724, 767, 783, 793, 821, 838, 857, 858, 870, 877, 878, 892, 933, 951, 955, 980}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(68, 998), fp: EncodedCountingMonoid(34, SumMonoid(15310)) }], item_sets: [ItemSet { range: Range(998, 68), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(68, 566), fp: EncodedCountingMonoid(27, SumMonoid(8309)) }, Fingerprint { range: Range(566, 998), fp: EncodedCountingMonoid(26, SumMonoid(20406)) }], item_sets: [ItemSet { range: Range(998, 68), items: [10, 14], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(68, 303), fp: EncodedCountingMonoid(11, SumMonoid(1960)) }, Fingerprint { range: Range(303, 566), fp: EncodedCountingMonoid(10, SumMonoid(3768)) }, Fingerprint { range: Range(566, 730), fp: EncodedCountingMonoid(7, SumMonoid(4598)) }, Fingerprint { range: Range(730, 998), fp: EncodedCountingMonoid(6, SumMonoid(4984)) }], item_sets: [], wants: [10, 14], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(68, 195), fp: EncodedCountingMonoid(7, SumMonoid(854)) }, Fingerprint { range: Range(195, 303), fp: EncodedCountingMonoid(7, SumMonoid(1732)) }, Fingerprint { range: Range(303, 462), fp: EncodedCountingMonoid(7, SumMonoid(2685)) }, Fingerprint { range: Range(462, 566), fp: EncodedCountingMonoid(6, SumMonoid(3038)) }, Fingerprint { range: Range(566, 690), fp: EncodedCountingMonoid(6, SumMonoid(3852)) }, Fingerprint { range: Range(690, 730), fp: EncodedCountingMonoid(5, SumMonoid(3501)) }, Fingerprint { range: Range(730, 877), fp: EncodedCountingMonoid(8, SumMonoid(6587)) }, Fingerprint { range: Range(877, 998), fp: EncodedCountingMonoid(7, SumMonoid(6466)) }], item_sets: [], wants: [], provide: [(10, true), (14, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(68, 147), fp: EncodedCountingMonoid(3, SumMonoid(333)) }, Fingerprint { range: Range(147, 195), fp: EncodedCountingMonoid(3, SumMonoid(466)) }, Fingerprint { range: Range(195, 244), fp: EncodedCountingMonoid(3, SumMonoid(625)) }, Fingerprint { range: Range(303, 389), fp: EncodedCountingMonoid(5, SumMonoid(1688)) }, Fingerprint { range: Range(389, 462), fp: EncodedCountingMonoid(5, SumMonoid(2080)) }, Fingerprint { range: Range(730, 821), fp: EncodedCountingMonoid(3, SumMonoid(2305)) }], item_sets: [ItemSet { range: Range(244, 303), items: [244, 292], want_response: true }, ItemSet { range: Range(462, 566), items: [], want_response: true }, ItemSet { range: Range(566, 643), items: [569, 588], want_response: true }, ItemSet { range: Range(643, 690), items: [643, 680], want_response: true }, ItemSet { range: Range(690, 708), items: [704, 706], want_response: true }, ItemSet { range: Range(708, 730), items: [708], want_response: true }, ItemSet { range: Range(821, 877), items: [821, 861], want_response: true }, ItemSet { range: Range(877, 998), items: [997], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(68, 125), fp: EncodedCountingMonoid(3, SumMonoid(269)) }, Fingerprint { range: Range(125, 147), fp: EncodedCountingMonoid(3, SumMonoid(400)) }], item_sets: [ItemSet { range: Range(244, 303), items: [268, 298, 302], want_response: false }, ItemSet { range: Range(462, 566), items: [462, 471, 500, 514, 539, 552], want_response: false }, ItemSet { range: Range(566, 643), items: [566, 584], want_response: false }, ItemSet { range: Range(643, 690), items: [654, 675, 684, 689], want_response: false }, ItemSet { range: Range(690, 708), items: [690, 693, 695, 699], want_response: false }, ItemSet { range: Range(708, 730), items: [724], want_response: false }, ItemSet { range: Range(821, 877), items: [821, 838, 857, 858, 870], want_response: false }, ItemSet { range: Range(877, 998), items: [877, 878, 892, 933, 951, 955, 980], want_response: false }, ItemSet { range: Range(147, 195), items: [185], want_response: true }, ItemSet { range: Range(195, 225), items: [195, 214], want_response: true }, ItemSet { range: Range(225, 244), items: [225, 230], want_response: true }, ItemSet { range: Range(303, 347), items: [305, 328], want_response: true }, ItemSet { range: Range(347, 389), items: [347], want_response: true }, ItemSet { range: Range(389, 434), items: [402, 420], want_response: true }, ItemSet { range: Range(434, 462), items: [434, 449], want_response: true }, ItemSet { range: Range(730, 793), items: [767, 783], want_response: true }, ItemSet { range: Range(793, 821), items: [793], want_response: true }], wants: [244, 292, 569, 588, 643, 680, 704, 706, 708, 861, 997], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(147, 195), items: [147, 152, 167], want_response: false }, ItemSet { range: Range(195, 225), items: [204, 207, 214], want_response: false }, ItemSet { range: Range(225, 244), items: [], want_response: false }, ItemSet { range: Range(303, 347), items: [303, 311, 317], want_response: false }, ItemSet { range: Range(347, 389), items: [370, 387], want_response: false }, ItemSet { range: Range(389, 434), items: [389, 407, 408, 427], want_response: false }, ItemSet { range: Range(434, 462), items: [449], want_response: false }, ItemSet { range: Range(730, 793), items: [730, 779], want_response: false }, ItemSet { range: Range(793, 821), items: [796], want_response: false }, ItemSet { range: Range(68, 125), items: [68], want_response: true }, ItemSet { range: Range(125, 147), items: [130, 135], want_response: true }], wants: [268, 298, 302, 462, 471, 500, 514, 539, 552, 566, 584, 654, 675, 684, 689, 690, 693, 695, 699, 724, 838, 857, 858, 870, 877, 878, 892, 933, 951, 955, 980, 185, 195, 225, 230, 305, 328, 347, 402, 420, 434, 767, 783, 793], provide: [(244, true), (292, true), (569, true), (588, true), (643, true), (680, true), (704, true), (706, true), (708, true), (861, true), (997, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(68, 125), items: [76, 94, 99], want_response: false }, ItemSet { range: Range(125, 147), items: [125, 131, 144], want_response: false }], wants: [147, 152, 167, 204, 207, 303, 311, 317, 370, 387, 389, 407, 408, 427, 730, 779, 796, 68, 130, 135], provide: [(268, true), (298, true), (302, true), (462, true), (471, true), (500, true), (514, true), (539, true), (552, true), (566, true), (584, true), (654, true), (675, true), (684, true), (689, true), (690, true), (693, true), (695, true), (699, true), (724, true), (838, true), (857, true), (858, true), (870, true), (877, true), (878, true), (892, true), (933, true), (951, true), (955, true), (980, true), (185, true), (195, true), (225, true), (230, true), (305, true), (328, true), (347, true), (402, true), (420, true), (434, true), (767, true), (783, true), (793, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [76, 94, 99, 125, 131, 144], provide: [(147, true), (152, true), (167, true), (204, true), (207, true), (303, true), (311, true), (317, true), (370, true), (387, true), (389, true), (407, true), (408, true), (427, true), (730, true), (779, true), (796, true), (68, true), (130, true), (135, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(76, true), (94, true), (99, true), (125, true), (131, true), (144, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {68, 130, 135, 147, 152, 167, 204, 207, 214, 244, 292, 303, 311, 317, 370, 387, 389, 407, 408, 427, 449, 569, 588, 643, 680, 704, 706, 708, 730, 779, 796, 821, 861, 997} + [10, 14, 268, 298, 302, 462, 471, 500, 514, 539, 552, 566, 584, 654, 675, 684, 689, 690, 693, 695, 699, 724, 838, 857, 858, 870, 877, 878, 892, 933, 951, 955, 980, 185, 195, 225, 230, 305, 328, 347, 402, 420, 434, 767, 783, 793, 76, 94, 99, 125, 131, 144]
[INFO] [stdout] b all: {10, 14, 76, 94, 99, 125, 131, 144, 185, 195, 214, 225, 230, 268, 298, 302, 305, 328, 347, 402, 420, 434, 449, 462, 471, 500, 514, 539, 552, 566, 584, 654, 675, 684, 689, 690, 693, 695, 699, 724, 767, 783, 793, 821, 838, 857, 858, 870, 877, 878, 892, 933, 951, 955, 980} + [244, 292, 569, 588, 643, 680, 704, 706, 708, 861, 997, 147, 152, 167, 204, 207, 303, 311, 317, 370, 387, 389, 407, 408, 427, 730, 779, 796, 68, 130, 135]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 14, 68, 76, 94, 99, 125, 130, 131, 135, 144, 147, 152, 167, 185, 195, 204, 207, 214, 225, 230, 244, 268, 292, 298, 302, 303, 305, 311, 317, 328, 347, 370, 387, 389, 402, 407, 408, 420, 427, 434, 449, 462, 471, 500, 514, 539, 552, 566, 569, 584, 588, 643, 654, 675, 680, 684, 689, 690, 693, 695, 699, 704, 706, 708, 724, 730, 767, 779, 783, 793, 796, 821, 838, 857, 858, 861, 870, 877, 878, 892, 933, 951, 955, 980, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 14, 68, 76, 94, 99, 125, 130, 131, 135, 144, 147, 152, 167, 185, 195, 204, 207, 214, 225, 230, 244, 268, 292, 298, 302, 303, 305, 311, 317, 328, 347, 370, 387, 389, 402, 407, 408, 420, 427, 434, 449, 462, 471, 500, 514, 539, 552, 566, 569, 584, 588, 643, 654, 675, 680, 684, 689, 690, 693, 695, 699, 704, 706, 708, 724, 730, 767, 779, 783, 793, 796, 821, 838, 857, 858, 861, 870, 877, 878, 892, 933, 951, 955, 980, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 14, 68, 76, 94, 99, 125, 130, 131, 135, 144, 147, 152, 167, 185, 195, 204, 207, 214, 225, 230, 244, 268, 292, 298, 302, 303, 305, 311, 317, 328, 347, 370, 387, 389, 402, 407, 408, 420, 427, 434, 449, 462, 471, 500, 514, 539, 552, 566, 569, 584, 588, 643, 654, 675, 680, 684, 689, 690, 693, 695, 699, 704, 706, 708, 724, 730, 767, 779, 783, 793, 796, 821, 838, 857, 858, 861, 870, 877, 878, 892, 933, 951, 955, 980, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 32, 35, 74, 100, 135, 145, 147, 180, 214, 236, 255, 263, 301, 327, 344, 356, 370, 376, 379, 408, 456, 550, 589, 610, 612, 625, 730, 738, 743, 751, 754, 792, 836, 838, 850, 859, 890, 908, 909, 922, 946, 999}
[INFO] [stdout] b items: {2, 13, 22, 56, 66, 81, 91, 98, 103, 104, 113, 115, 118, 122, 150, 151, 159, 160, 164, 187, 190, 192, 196, 200, 207, 224, 244, 256, 300, 302, 320, 322, 327, 342, 365, 381, 382, 402, 410, 421, 426, 459, 481, 482, 512, 513, 524, 525, 530, 564, 572, 582, 615, 647, 659, 667, 704, 705, 707, 714, 722, 730, 774, 792, 795, 796, 798, 802, 814, 886, 891, 904, 917, 923, 941, 958, 974, 990, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 1000), fp: EncodedCountingMonoid(43, SumMonoid(21587)) }], item_sets: [ItemSet { range: Range(1000, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 426), fp: EncodedCountingMonoid(39, SumMonoid(8056)) }, Fingerprint { range: Range(426, 1000), fp: EncodedCountingMonoid(39, SumMonoid(27992)) }], item_sets: [ItemSet { range: Range(1000, 3), items: [2], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 255), fp: EncodedCountingMonoid(11, SumMonoid(1301)) }, Fingerprint { range: Range(255, 426), fp: EncodedCountingMonoid(10, SumMonoid(3379)) }, Fingerprint { range: Range(426, 792), fp: EncodedCountingMonoid(11, SumMonoid(7158)) }, Fingerprint { range: Range(792, 1000), fp: EncodedCountingMonoid(11, SumMonoid(9749)) }], item_sets: [], wants: [2], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 150), fp: EncodedCountingMonoid(13, SumMonoid(1102)) }, Fingerprint { range: Range(150, 255), fp: EncodedCountingMonoid(13, SumMonoid(2424)) }, Fingerprint { range: Range(255, 365), fp: EncodedCountingMonoid(7, SumMonoid(2169)) }, Fingerprint { range: Range(365, 426), fp: EncodedCountingMonoid(6, SumMonoid(2361)) }, Fingerprint { range: Range(426, 615), fp: EncodedCountingMonoid(12, SumMonoid(6170)) }, Fingerprint { range: Range(615, 792), fp: EncodedCountingMonoid(11, SumMonoid(7644)) }, Fingerprint { range: Range(792, 904), fp: EncodedCountingMonoid(8, SumMonoid(6574)) }, Fingerprint { range: Range(904, 1000), fp: EncodedCountingMonoid(8, SumMonoid(7604)) }], item_sets: [], wants: [], provide: [(2, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 100), fp: EncodedCountingMonoid(4, SumMonoid(144)) }, Fingerprint { range: Range(100, 150), fp: EncodedCountingMonoid(4, SumMonoid(527)) }, Fingerprint { range: Range(255, 327), fp: EncodedCountingMonoid(3, SumMonoid(819)) }, Fingerprint { range: Range(327, 365), fp: EncodedCountingMonoid(3, SumMonoid(1027)) }, Fingerprint { range: Range(426, 610), fp: EncodedCountingMonoid(3, SumMonoid(1595)) }, Fingerprint { range: Range(615, 743), fp: EncodedCountingMonoid(3, SumMonoid(2093)) }, Fingerprint { range: Range(743, 792), fp: EncodedCountingMonoid(3, SumMonoid(2248)) }, Fingerprint { range: Range(792, 850), fp: EncodedCountingMonoid(3, SumMonoid(2466)) }, Fingerprint { range: Range(850, 904), fp: EncodedCountingMonoid(3, SumMonoid(2599)) }, Fingerprint { range: Range(904, 946), fp: EncodedCountingMonoid(3, SumMonoid(2739)) }], item_sets: [ItemSet { range: Range(150, 236), items: [180, 214], want_response: true }, ItemSet { range: Range(236, 255), items: [236], want_response: true }, ItemSet { range: Range(365, 379), items: [370, 376], want_response: true }, ItemSet { range: Range(379, 426), items: [379, 408], want_response: true }, ItemSet { range: Range(610, 615), items: [610, 612], want_response: true }, ItemSet { range: Range(946, 1000), items: [946, 999], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 81), fp: EncodedCountingMonoid(4, SumMonoid(157)) }, Fingerprint { range: Range(81, 100), fp: EncodedCountingMonoid(3, SumMonoid(270)) }, Fingerprint { range: Range(100, 115), fp: EncodedCountingMonoid(3, SumMonoid(320)) }, Fingerprint { range: Range(115, 150), fp: EncodedCountingMonoid(3, SumMonoid(355)) }, Fingerprint { range: Range(255, 320), fp: EncodedCountingMonoid(3, SumMonoid(858)) }, Fingerprint { range: Range(426, 524), fp: EncodedCountingMonoid(6, SumMonoid(2873)) }, Fingerprint { range: Range(524, 610), fp: EncodedCountingMonoid(6, SumMonoid(3297)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3292)) }, Fingerprint { range: Range(705, 743), fp: EncodedCountingMonoid(5, SumMonoid(3578)) }, Fingerprint { range: Range(792, 798), fp: EncodedCountingMonoid(3, SumMonoid(2383)) }, Fingerprint { range: Range(798, 850), fp: EncodedCountingMonoid(3, SumMonoid(2414)) }], item_sets: [ItemSet { range: Range(150, 236), items: [150, 151, 159, 160, 164, 187, 190, 192, 196, 200, 207, 224], want_response: false }, ItemSet { range: Range(236, 255), items: [244], want_response: false }, ItemSet { range: Range(365, 379), items: [365], want_response: false }, ItemSet { range: Range(379, 426), items: [381, 382, 402, 410, 421], want_response: false }, ItemSet { range: Range(610, 615), items: [], want_response: false }, ItemSet { range: Range(946, 1000), items: [958, 974, 990, 997], want_response: false }, ItemSet { range: Range(320, 327), items: [320, 322], want_response: true }, ItemSet { range: Range(327, 365), items: [327, 342], want_response: true }, ItemSet { range: Range(743, 792), items: [774], want_response: true }, ItemSet { range: Range(850, 904), items: [886, 891], want_response: true }, ItemSet { range: Range(904, 923), items: [904, 917], want_response: true }, ItemSet { range: Range(923, 946), items: [923, 941], want_response: true }], wants: [180, 214, 236, 370, 376, 379, 408, 610, 612, 946, 999], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(320, 327), items: [], want_response: false }, ItemSet { range: Range(327, 365), items: [327, 344, 356], want_response: false }, ItemSet { range: Range(743, 792), items: [743, 751, 754], want_response: false }, ItemSet { range: Range(850, 904), items: [850, 859, 890], want_response: false }, ItemSet { range: Range(904, 923), items: [908, 909, 922], want_response: false }, ItemSet { range: Range(923, 946), items: [], want_response: false }, ItemSet { range: Range(3, 35), items: [3, 32], want_response: true }, ItemSet { range: Range(35, 81), items: [35, 74], want_response: true }, ItemSet { range: Range(81, 100), items: [], want_response: true }, ItemSet { range: Range(100, 115), items: [100], want_response: true }, ItemSet { range: Range(115, 147), items: [135, 145], want_response: true }, ItemSet { range: Range(147, 150), items: [147], want_response: true }, ItemSet { range: Range(255, 301), items: [255, 263], want_response: true }, ItemSet { range: Range(301, 320), items: [301], want_response: true }, ItemSet { range: Range(426, 524), items: [456], want_response: true }, ItemSet { range: Range(524, 610), items: [550, 589], want_response: true }, ItemSet { range: Range(615, 705), items: [625], want_response: true }, ItemSet { range: Range(705, 743), items: [730, 738], want_response: true }, ItemSet { range: Range(792, 798), items: [792], want_response: true }, ItemSet { range: Range(798, 850), items: [836, 838], want_response: true }], wants: [150, 151, 159, 160, 164, 187, 190, 192, 196, 200, 207, 224, 244, 365, 381, 382, 402, 410, 421, 958, 974, 990, 997, 320, 322, 342, 774, 886, 891, 904, 917, 923, 941], provide: [(180, true), (214, true), (236, true), (370, true), (376, true), (379, true), (408, true), (610, true), (612, true), (946, true), (999, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 35), items: [13, 22], want_response: false }, ItemSet { range: Range(35, 81), items: [56, 66], want_response: false }, ItemSet { range: Range(81, 100), items: [81, 91, 98], want_response: false }, ItemSet { range: Range(100, 115), items: [103, 104, 113], want_response: false }, ItemSet { range: Range(115, 147), items: [115, 118, 122], want_response: false }, ItemSet { range: Range(147, 150), items: [], want_response: false }, ItemSet { range: Range(255, 301), items: [256, 300], want_response: false }, ItemSet { range: Range(301, 320), items: [302], want_response: false }, ItemSet { range: Range(426, 524), items: [426, 459, 481, 482, 512, 513], want_response: false }, ItemSet { range: Range(524, 610), items: [524, 525, 530, 564, 572, 582], want_response: false }, ItemSet { range: Range(615, 705), items: [615, 647, 659, 667, 704], want_response: false }, ItemSet { range: Range(705, 743), items: [705, 707, 714, 722, 730], want_response: false }, ItemSet { range: Range(792, 798), items: [792, 795, 796], want_response: false }, ItemSet { range: Range(798, 850), items: [798, 802, 814], want_response: false }], wants: [344, 356, 743, 751, 754, 850, 859, 890, 908, 909, 922, 3, 32, 35, 74, 100, 135, 145, 147, 255, 263, 301, 456, 550, 589, 625, 738, 836, 838], provide: [(150, true), (151, true), (159, true), (160, true), (164, true), (187, true), (190, true), (192, true), (196, true), (200, true), (207, true), (224, true), (244, true), (365, true), (381, true), (382, true), (402, true), (410, true), (421, true), (958, true), (974, true), (990, true), (997, true), (320, true), (322, true), (342, true), (774, true), (886, true), (891, true), (904, true), (917, true), (923, true), (941, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [13, 22, 56, 66, 81, 91, 98, 103, 104, 113, 115, 118, 122, 256, 300, 302, 426, 459, 481, 482, 512, 513, 524, 525, 530, 564, 572, 582, 615, 647, 659, 667, 704, 705, 707, 714, 722, 795, 796, 798, 802, 814], provide: [(344, true), (356, true), (743, true), (751, true), (754, true), (850, true), (859, true), (890, true), (908, true), (909, true), (922, true), (3, true), (32, true), (35, true), (74, true), (100, true), (135, true), (145, true), (147, true), (255, true), (263, true), (301, true), (456, true), (550, true), (589, true), (625, true), (738, true), (836, true), (838, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(13, true), (22, true), (56, true), (66, true), (81, true), (91, true), (98, true), (103, true), (104, true), (113, true), (115, true), (118, true), (122, true), (256, true), (300, true), (302, true), (426, true), (459, true), (481, true), (482, true), (512, true), (513, true), (524, true), (525, true), (530, true), (564, true), (572, true), (582, true), (615, true), (647, true), (659, true), (667, true), (704, true), (705, true), (707, true), (714, true), (722, true), (795, true), (796, true), (798, true), (802, true), (814, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 32, 35, 74, 100, 135, 145, 147, 180, 214, 236, 255, 263, 301, 327, 344, 356, 370, 376, 379, 408, 456, 550, 589, 610, 612, 625, 730, 738, 743, 751, 754, 792, 836, 838, 850, 859, 890, 908, 909, 922, 946, 999} + [2, 150, 151, 159, 160, 164, 187, 190, 192, 196, 200, 207, 224, 244, 365, 381, 382, 402, 410, 421, 958, 974, 990, 997, 320, 322, 342, 774, 886, 891, 904, 917, 923, 941, 13, 22, 56, 66, 81, 91, 98, 103, 104, 113, 115, 118, 122, 256, 300, 302, 426, 459, 481, 482, 512, 513, 524, 525, 530, 564, 572, 582, 615, 647, 659, 667, 704, 705, 707, 714, 722, 795, 796, 798, 802, 814]
[INFO] [stdout] b all: {2, 13, 22, 56, 66, 81, 91, 98, 103, 104, 113, 115, 118, 122, 150, 151, 159, 160, 164, 187, 190, 192, 196, 200, 207, 224, 244, 256, 300, 302, 320, 322, 327, 342, 365, 381, 382, 402, 410, 421, 426, 459, 481, 482, 512, 513, 524, 525, 530, 564, 572, 582, 615, 647, 659, 667, 704, 705, 707, 714, 722, 730, 774, 792, 795, 796, 798, 802, 814, 886, 891, 904, 917, 923, 941, 958, 974, 990, 997} + [180, 214, 236, 370, 376, 379, 408, 610, 612, 946, 999, 344, 356, 743, 751, 754, 850, 859, 890, 908, 909, 922, 3, 32, 35, 74, 100, 135, 145, 147, 255, 263, 301, 456, 550, 589, 625, 738, 836, 838]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 3, 13, 22, 32, 35, 56, 66, 74, 81, 91, 98, 100, 103, 104, 113, 115, 118, 122, 135, 145, 147, 150, 151, 159, 160, 164, 180, 187, 190, 192, 196, 200, 207, 214, 224, 236, 244, 255, 256, 263, 300, 301, 302, 320, 322, 327, 342, 344, 356, 365, 370, 376, 379, 381, 382, 402, 408, 410, 421, 426, 456, 459, 481, 482, 512, 513, 524, 525, 530, 550, 564, 572, 582, 589, 610, 612, 615, 625, 647, 659, 667, 704, 705, 707, 714, 722, 730, 738, 743, 751, 754, 774, 792, 795, 796, 798, 802, 814, 836, 838, 850, 859, 886, 890, 891, 904, 908, 909, 917, 922, 923, 941, 946, 958, 974, 990, 997, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 3, 13, 22, 32, 35, 56, 66, 74, 81, 91, 98, 100, 103, 104, 113, 115, 118, 122, 135, 145, 147, 150, 151, 159, 160, 164, 180, 187, 190, 192, 196, 200, 207, 214, 224, 236, 244, 255, 256, 263, 300, 301, 302, 320, 322, 327, 342, 344, 356, 365, 370, 376, 379, 381, 382, 402, 408, 410, 421, 426, 456, 459, 481, 482, 512, 513, 524, 525, 530, 550, 564, 572, 582, 589, 610, 612, 615, 625, 647, 659, 667, 704, 705, 707, 714, 722, 730, 738, 743, 751, 754, 774, 792, 795, 796, 798, 802, 814, 836, 838, 850, 859, 886, 890, 891, 904, 908, 909, 917, 922, 923, 941, 946, 958, 974, 990, 997, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 3, 13, 22, 32, 35, 56, 66, 74, 81, 91, 98, 100, 103, 104, 113, 115, 118, 122, 135, 145, 147, 150, 151, 159, 160, 164, 180, 187, 190, 192, 196, 200, 207, 214, 224, 236, 244, 255, 256, 263, 300, 301, 302, 320, 322, 327, 342, 344, 356, 365, 370, 376, 379, 381, 382, 402, 408, 410, 421, 426, 456, 459, 481, 482, 512, 513, 524, 525, 530, 550, 564, 572, 582, 589, 610, 612, 615, 625, 647, 659, 667, 704, 705, 707, 714, 722, 730, 738, 743, 751, 754, 774, 792, 795, 796, 798, 802, 814, 836, 838, 850, 859, 886, 890, 891, 904, 908, 909, 917, 922, 923, 941, 946, 958, 974, 990, 997, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 211, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 716, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(82, SumMonoid(38997)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 165), fp: EncodedCountingMonoid(21, SumMonoid(1746)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(20, SumMonoid(6226)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(21, SumMonoid(13196)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(20, SumMonoid(17829)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 65), fp: EncodedCountingMonoid(7, SumMonoid(176)) }, Fingerprint { range: Range(65, 103), fp: EncodedCountingMonoid(6, SumMonoid(481)) }, Fingerprint { range: Range(103, 146), fp: EncodedCountingMonoid(4, SumMonoid(473)) }, Fingerprint { range: Range(146, 165), fp: EncodedCountingMonoid(4, SumMonoid(616)) }, Fingerprint { range: Range(165, 222), fp: EncodedCountingMonoid(6, SumMonoid(1186)) }, Fingerprint { range: Range(222, 349), fp: EncodedCountingMonoid(6, SumMonoid(1673)) }, Fingerprint { range: Range(349, 430), fp: EncodedCountingMonoid(4, SumMonoid(1526)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(5, SumMonoid(2939)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(6, SumMonoid(4066)) }, Fingerprint { range: Range(707, 740), fp: EncodedCountingMonoid(5, SumMonoid(3598)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(5, SumMonoid(4628)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(5, SumMonoid(4886)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(222, 301), fp: EncodedCountingMonoid(6, SumMonoid(1635)) }, Fingerprint { range: Range(301, 349), fp: EncodedCountingMonoid(5, SumMonoid(1575)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 65), items: [40, 62], want_response: true }, ItemSet { range: Range(65, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(103, 133), items: [103, 109], want_response: true }, ItemSet { range: Range(133, 146), items: [133, 142], want_response: true }, ItemSet { range: Range(146, 161), items: [148, 159], want_response: true }, ItemSet { range: Range(161, 165), items: [161, 163], want_response: true }, ItemSet { range: Range(165, 197), items: [188, 190], want_response: true }, ItemSet { range: Range(197, 222), items: [197, 216], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 740), items: [712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 65), items: [40, 64], want_response: false }, ItemSet { range: Range(65, 87), items: [65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [88, 102], want_response: false }, ItemSet { range: Range(103, 133), items: [108, 119, 120, 126], want_response: false }, ItemSet { range: Range(133, 146), items: [], want_response: false }, ItemSet { range: Range(146, 161), items: [146, 155, 156, 159], want_response: false }, ItemSet { range: Range(161, 165), items: [], want_response: false }, ItemSet { range: Range(165, 197), items: [165, 180], want_response: false }, ItemSet { range: Range(197, 222), items: [201, 209, 211, 220], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 740), items: [707, 716, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 301), items: [272, 286], want_response: true }, ItemSet { range: Range(301, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [349, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 588), items: [568, 583], want_response: true }, ItemSet { range: Range(588, 598), items: [588, 596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 705), items: [682, 690], want_response: true }, ItemSet { range: Range(705, 707), items: [705], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 919), items: [906, 918], want_response: true }, ItemSet { range: Range(919, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 301), items: [286, 292, 300], want_response: false }, ItemSet { range: Range(301, 349), items: [301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 588), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(588, 598), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 705), items: [676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(705, 707), items: [705], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 919), items: [899, 916], want_response: false }, ItemSet { range: Range(919, 940), items: [923, 932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 165, 180, 201, 209, 211, 220, 495, 604, 707, 716, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (165, true), (180, true), (201, true), (209, true), (211, true), (220, true), (495, true), (604, true), (707, true), (716, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (588, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (918, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 211, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 716, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 165, 180, 201, 209, 211, 220, 495, 604, 707, 716, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 211, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(81, SumMonoid(38281)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 165), fp: EncodedCountingMonoid(21, SumMonoid(1746)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(20, SumMonoid(6226)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(20, SumMonoid(12480)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(20, SumMonoid(17829)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 65), fp: EncodedCountingMonoid(7, SumMonoid(176)) }, Fingerprint { range: Range(65, 103), fp: EncodedCountingMonoid(6, SumMonoid(481)) }, Fingerprint { range: Range(103, 146), fp: EncodedCountingMonoid(4, SumMonoid(473)) }, Fingerprint { range: Range(146, 165), fp: EncodedCountingMonoid(4, SumMonoid(616)) }, Fingerprint { range: Range(165, 222), fp: EncodedCountingMonoid(6, SumMonoid(1186)) }, Fingerprint { range: Range(222, 349), fp: EncodedCountingMonoid(6, SumMonoid(1673)) }, Fingerprint { range: Range(349, 430), fp: EncodedCountingMonoid(4, SumMonoid(1526)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(5, SumMonoid(2939)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(5, SumMonoid(4628)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(5, SumMonoid(4886)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(222, 301), fp: EncodedCountingMonoid(6, SumMonoid(1635)) }, Fingerprint { range: Range(301, 349), fp: EncodedCountingMonoid(5, SumMonoid(1575)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 65), items: [40, 62], want_response: true }, ItemSet { range: Range(65, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(103, 133), items: [103, 109], want_response: true }, ItemSet { range: Range(133, 146), items: [133, 142], want_response: true }, ItemSet { range: Range(146, 161), items: [148, 159], want_response: true }, ItemSet { range: Range(161, 165), items: [161, 163], want_response: true }, ItemSet { range: Range(165, 197), items: [188, 190], want_response: true }, ItemSet { range: Range(197, 222), items: [197, 216], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 65), items: [40, 64], want_response: false }, ItemSet { range: Range(65, 87), items: [65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [88, 102], want_response: false }, ItemSet { range: Range(103, 133), items: [108, 119, 120, 126], want_response: false }, ItemSet { range: Range(133, 146), items: [], want_response: false }, ItemSet { range: Range(146, 161), items: [146, 155, 156, 159], want_response: false }, ItemSet { range: Range(161, 165), items: [], want_response: false }, ItemSet { range: Range(165, 197), items: [165, 180], want_response: false }, ItemSet { range: Range(197, 222), items: [201, 209, 211, 220], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 301), items: [272, 286], want_response: true }, ItemSet { range: Range(301, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [349, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 588), items: [568, 583], want_response: true }, ItemSet { range: Range(588, 598), items: [588, 596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 919), items: [906, 918], want_response: true }, ItemSet { range: Range(919, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 301), items: [286, 292, 300], want_response: false }, ItemSet { range: Range(301, 349), items: [301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 588), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(588, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 919), items: [899, 916], want_response: false }, ItemSet { range: Range(919, 940), items: [923, 932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 165, 180, 201, 209, 211, 220, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (165, true), (180, true), (201, true), (209, true), (211, true), (220, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (588, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (918, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 211, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 165, 180, 201, 209, 211, 220, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(80, SumMonoid(38070)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(20, SumMonoid(12480)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(20, SumMonoid(17829)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(5, SumMonoid(2939)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(5, SumMonoid(4628)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(5, SumMonoid(4886)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 588), items: [568, 583], want_response: true }, ItemSet { range: Range(588, 598), items: [588, 596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 919), items: [906, 918], want_response: true }, ItemSet { range: Range(919, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 588), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(588, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 919), items: [899, 916], want_response: false }, ItemSet { range: Range(919, 940), items: [923, 932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (588, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (918, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(79, SumMonoid(37363)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(20, SumMonoid(12513)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(19, SumMonoid(17089)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(5, SumMonoid(2939)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 744), fp: EncodedCountingMonoid(5, SumMonoid(3620)) }, Fingerprint { range: Range(744, 875), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(875, 916), fp: EncodedCountingMonoid(5, SumMonoid(4437)) }, Fingerprint { range: Range(916, 966), fp: EncodedCountingMonoid(5, SumMonoid(4683)) }, Fingerprint { range: Range(966, 993), fp: EncodedCountingMonoid(4, SumMonoid(3925)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 875), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 966), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 743), items: [705, 712], want_response: true }, ItemSet { range: Range(743, 744), items: [743], want_response: true }, ItemSet { range: Range(875, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(966, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 743), items: [705, 717, 727, 731, 740], want_response: false }, ItemSet { range: Range(743, 744), items: [], want_response: false }, ItemSet { range: Range(875, 916), items: [875, 883, 884, 889, 906], want_response: false }, ItemSet { range: Range(966, 993), items: [966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 588), items: [568, 583], want_response: true }, ItemSet { range: Range(588, 598), items: [588, 596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 875), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 925), items: [918, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 966), items: [960, 961], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 743, 894, 899, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 588), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(588, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 875), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 925), items: [916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 966), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 717, 727, 731, 740, 875, 883, 884, 889, 906, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 744, 803, 827, 832, 838, 918, 919, 925, 960, 961], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (717, true), (727, true), (731, true), (740, true), (875, true), (883, true), (884, true), (889, true), (906, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (588, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (744, true), (803, true), (827, true), (832, true), (838, true), (918, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 743, 894, 899, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 717, 727, 731, 740, 875, 883, 884, 889, 906, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 744, 803, 827, 832, 838, 918, 919, 925, 960, 961, 5, 6, 17]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 88, 102, 103, 108, 109, 119, 120, 126, 133, 142, 146, 148, 155, 156, 159, 161, 163, 165, 180, 188, 190, 197, 201, 209, 216, 220, 222, 225, 242, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 467, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 588, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 690, 693, 705, 712, 717, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 875, 883, 884, 889, 894, 899, 906, 916, 918, 919, 923, 925, 932, 940, 945, 955, 960, 961, 966, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 88, 102, 103, 108, 109, 119, 120, 126, 133, 142, 146, 148, 155, 156, 159, 161, 163, 165, 180, 188, 190, 197, 201, 209, 216, 220, 222, 225, 242, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 467, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 588, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 690, 693, 705, 712, 717, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 875, 883, 884, 889, 894, 899, 906, 916, 918, 919, 923, 925, 932, 940, 945, 955, 960, 961, 966, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 88, 102, 103, 108, 109, 119, 120, 126, 133, 142, 146, 148, 155, 156, 159, 161, 163, 165, 180, 188, 190, 197, 201, 209, 216, 220, 222, 225, 242, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 467, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 588, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 690, 693, 705, 712, 717, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 875, 883, 884, 889, 894, 899, 906, 916, 918, 919, 923, 925, 932, 940, 945, 955, 960, 961, 966, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(80, SumMonoid(38070)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(20, SumMonoid(12480)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(20, SumMonoid(17829)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(5, SumMonoid(2939)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(5, SumMonoid(4628)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(5, SumMonoid(4886)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 588), items: [568, 583], want_response: true }, ItemSet { range: Range(588, 598), items: [588, 596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 919), items: [906, 918], want_response: true }, ItemSet { range: Range(919, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 588), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(588, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 919), items: [899, 916], want_response: false }, ItemSet { range: Range(919, 940), items: [923, 932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (588, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (918, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 918, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 918, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(79, SumMonoid(37152)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(20, SumMonoid(12480)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(19, SumMonoid(16911)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(5, SumMonoid(2939)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 966), fp: EncodedCountingMonoid(5, SumMonoid(4671)) }, Fingerprint { range: Range(966, 993), fp: EncodedCountingMonoid(4, SumMonoid(3925)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 966), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(966, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(966, 993), items: [966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 588), items: [568, 583], want_response: true }, ItemSet { range: Range(588, 598), items: [588, 596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 966), items: [960, 961], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 588), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(588, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 966), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 961], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (588, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 961, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(79, SumMonoid(37152)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(20, SumMonoid(12480)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(19, SumMonoid(16911)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(5, SumMonoid(2939)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 966), fp: EncodedCountingMonoid(5, SumMonoid(4671)) }, Fingerprint { range: Range(966, 993), fp: EncodedCountingMonoid(4, SumMonoid(3925)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 966), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(966, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(966, 993), items: [966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 588), items: [568, 583], want_response: true }, ItemSet { range: Range(588, 598), items: [588, 596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 966), items: [960, 961], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 588), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(588, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 966), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 961], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (588, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 588, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 588, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 961, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 966, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(78, SumMonoid(36564)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(19, SumMonoid(11892)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(19, SumMonoid(16911)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 966), fp: EncodedCountingMonoid(5, SumMonoid(4671)) }, Fingerprint { range: Range(966, 993), fp: EncodedCountingMonoid(4, SumMonoid(3925)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 966), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(966, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(966, 993), items: [966, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 966), items: [960, 961], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 966), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 961], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (966, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 966, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 966, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 961, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(77, SumMonoid(35598)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(19, SumMonoid(11892)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(77, SumMonoid(35598)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(20, SumMonoid(6174)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(19, SumMonoid(11892)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(5, SumMonoid(1857)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(4, SumMonoid(1841)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 382), items: [331, 349], want_response: true }, ItemSet { range: Range(382, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 467), items: [430, 449], want_response: true }, ItemSet { range: Range(467, 481), items: [467], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 382), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(382, 384), items: [], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 467), items: [452, 463], want_response: false }, ItemSet { range: Range(467, 481), items: [469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (495, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (467, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 467, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 495, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 467, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(76, SumMonoid(35131)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(19, SumMonoid(5707)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(19, SumMonoid(11892)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(5, SumMonoid(3587)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 717, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (604, true), (707, true), (717, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 717, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 604, 707, 717, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(75, SumMonoid(34414)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(20, SumMonoid(1587)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(19, SumMonoid(5707)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(5, SumMonoid(537)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 102, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (102, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 102, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(74, SumMonoid(34312)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(19, SumMonoid(1485)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(19, SumMonoid(5707)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(6, SumMonoid(1134)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(5, SumMonoid(1342)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 222), items: [220], want_response: true }, ItemSet { range: Range(222, 272), items: [222, 242], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 222), items: [], want_response: false }, ItemSet { range: Range(222, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (242, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 242, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 242, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(73, SumMonoid(34070)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(19, SumMonoid(1485)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(18, SumMonoid(5465)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 220), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(220, 324), fp: EncodedCountingMonoid(5, SumMonoid(1320)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 220), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 272), items: [220, 222], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(72, SumMonoid(33238)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(19, SumMonoid(1485)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(18, SumMonoid(5465)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15113)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 220), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(220, 324), fp: EncodedCountingMonoid(5, SumMonoid(1320)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 875), fp: EncodedCountingMonoid(5, SumMonoid(3952)) }, Fingerprint { range: Range(875, 899), fp: EncodedCountingMonoid(4, SumMonoid(3531)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 220), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 830), fp: EncodedCountingMonoid(4, SumMonoid(3039)) }, Fingerprint { range: Range(830, 875), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(875, 899), items: [894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(875, 899), items: [875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 272), items: [220, 222], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 803), items: [740, 744], want_response: true }, ItemSet { range: Range(803, 830), items: [803, 827], want_response: true }, ItemSet { range: Range(830, 875), items: [838], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 803), items: [743, 746, 755, 795], want_response: false }, ItemSet { range: Range(803, 830), items: [], want_response: false }, ItemSet { range: Range(830, 875), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 803, 827, 838, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 795, 830, 837, 850, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (803, true), (827, true), (838, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 795, 830, 837, 850, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 803, 827, 838, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 88, 103, 108, 109, 119, 120, 126, 133, 142, 146, 148, 155, 156, 159, 161, 163, 165, 180, 188, 190, 197, 201, 209, 216, 220, 222, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 690, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 837, 838, 850, 875, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 88, 103, 108, 109, 119, 120, 126, 133, 142, 146, 148, 155, 156, 159, 161, 163, 165, 180, 188, 190, 197, 201, 209, 216, 220, 222, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 690, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 837, 838, 850, 875, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 88, 103, 108, 109, 119, 120, 126, 133, 142, 146, 148, 155, 156, 159, 161, 163, 165, 180, 188, 190, 197, 201, 209, 216, 220, 222, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 690, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 837, 838, 850, 875, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(73, SumMonoid(34070)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(19, SumMonoid(1485)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(18, SumMonoid(5465)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(4, SumMonoid(583)) }, Fingerprint { range: Range(159, 220), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(220, 324), fp: EncodedCountingMonoid(5, SumMonoid(1320)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 220), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126, 146], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 272), items: [220, 222], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (146, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 146, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(72, SumMonoid(33924)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(18, SumMonoid(5465)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 220), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(220, 324), fp: EncodedCountingMonoid(5, SumMonoid(1320)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 220), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 272), items: [220, 222], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(72, SumMonoid(33924)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(18, SumMonoid(5465)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 220), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(220, 324), fp: EncodedCountingMonoid(5, SumMonoid(1320)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 220), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 272), items: [220, 222], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(72, SumMonoid(33924)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(18, SumMonoid(5465)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(18, SumMonoid(15945)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 220), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(220, 324), fp: EncodedCountingMonoid(5, SumMonoid(1320)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(5, SumMonoid(4369)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 220), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 875, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 272), items: [220, 222], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (875, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 875, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 875, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(71, SumMonoid(33049)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(18, SumMonoid(5465)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 220), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(220, 324), fp: EncodedCountingMonoid(5, SumMonoid(1320)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 220), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(220, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 220), items: [201, 209], want_response: true }, ItemSet { range: Range(220, 272), items: [220, 222], want_response: true }, ItemSet { range: Range(272, 300), items: [272, 286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 220), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(220, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (220, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 220, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 220, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(70, SumMonoid(32829)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(17, SumMonoid(5245)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 222), items: [201, 209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(70, SumMonoid(32829)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(17, SumMonoid(5245)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(5, SumMonoid(3361)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 222), items: [201, 209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 690), items: [671, 682], want_response: true }, ItemSet { range: Range(690, 705), items: [690], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 690), items: [668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(690, 705), items: [693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (690, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 690, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 690, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(69, SumMonoid(32139)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(17, SumMonoid(5245)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 222), items: [201, 209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(69, SumMonoid(32139)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(18, SumMonoid(1339)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(17, SumMonoid(5245)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(5, SumMonoid(914)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 222), items: [201, 209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (201, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 201, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 201, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(68, SumMonoid(31938)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 156), fp: EncodedCountingMonoid(17, SumMonoid(1183)) }, Fingerprint { range: Range(156, 501), fp: EncodedCountingMonoid(17, SumMonoid(5200)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 156), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(156, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 120), fp: EncodedCountingMonoid(3, SumMonoid(315)) }, Fingerprint { range: Range(120, 156), fp: EncodedCountingMonoid(3, SumMonoid(401)) }, Fingerprint { range: Range(156, 222), fp: EncodedCountingMonoid(5, SumMonoid(869)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(156, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 120), items: [109], want_response: true }, ItemSet { range: Range(120, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 156), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 120), items: [119], want_response: false }, ItemSet { range: Range(120, 148), items: [120, 126], want_response: false }, ItemSet { range: Range(148, 156), items: [155], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(156, 165), items: [156, 159], want_response: true }, ItemSet { range: Range(165, 190), items: [165, 180], want_response: true }, ItemSet { range: Range(190, 222), items: [209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(156, 165), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(165, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 156, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (156, true), (165, true), (180, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 156, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(68, SumMonoid(31938)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 156), fp: EncodedCountingMonoid(17, SumMonoid(1183)) }, Fingerprint { range: Range(156, 501), fp: EncodedCountingMonoid(17, SumMonoid(5200)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 156), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(156, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(6, SumMonoid(112)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 120), fp: EncodedCountingMonoid(3, SumMonoid(315)) }, Fingerprint { range: Range(120, 156), fp: EncodedCountingMonoid(3, SumMonoid(401)) }, Fingerprint { range: Range(156, 222), fp: EncodedCountingMonoid(5, SumMonoid(869)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(156, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 120), items: [109], want_response: true }, ItemSet { range: Range(120, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 156), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 120), items: [119], want_response: false }, ItemSet { range: Range(120, 148), items: [120, 126], want_response: false }, ItemSet { range: Range(148, 156), items: [155], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(156, 165), items: [156, 159], want_response: true }, ItemSet { range: Range(165, 190), items: [165, 180], want_response: true }, ItemSet { range: Range(190, 222), items: [209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(156, 165), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(165, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 156, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (156, true), (165, true), (180, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 40, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 156, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 6, 17, 21, 23, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 993), fp: EncodedCountingMonoid(67, SumMonoid(31898)) }], item_sets: [ItemSet { range: Range(993, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 5), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 159), fp: EncodedCountingMonoid(17, SumMonoid(1299)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(16, SumMonoid(5044)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 64), fp: EncodedCountingMonoid(5, SumMonoid(72)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(5, SumMonoid(355)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(4, SumMonoid(713)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 21), fp: EncodedCountingMonoid(3, SumMonoid(28)) }], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 222), items: [209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [40, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }, ItemSet { range: Range(5, 21), items: [7], want_response: true }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(40, true), (62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 21), items: [5, 6, 17], want_response: false }], wants: [31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (21, true), (23, true), (165, true), (180, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [5, 6, 17], provide: [(31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(5, true), (6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 6, 17, 21, 23, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 40, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 7]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 21, 23, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960, 5, 6, 17]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(66, SumMonoid(31893)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(16, SumMonoid(1294)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(16, SumMonoid(5044)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 65), fp: EncodedCountingMonoid(5, SumMonoid(131)) }, Fingerprint { range: Range(65, 87), fp: EncodedCountingMonoid(4, SumMonoid(291)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(4, SumMonoid(713)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 401), fp: EncodedCountingMonoid(4, SumMonoid(1456)) }, Fingerprint { range: Range(401, 501), fp: EncodedCountingMonoid(4, SumMonoid(1775)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 366), fp: EncodedCountingMonoid(4, SumMonoid(1378)) }, Fingerprint { range: Range(366, 401), fp: EncodedCountingMonoid(4, SumMonoid(1517)) }, Fingerprint { range: Range(401, 463), fp: EncodedCountingMonoid(4, SumMonoid(1687)) }, Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(4, SumMonoid(1909)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 65), items: [40, 62], want_response: true }, ItemSet { range: Range(65, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 65), items: [64], want_response: false }, ItemSet { range: Range(65, 87), items: [65, 67, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 222), items: [209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 366), items: [331, 349], want_response: true }, ItemSet { range: Range(366, 401), items: [382, 394], want_response: true }, ItemSet { range: Range(401, 449), items: [401, 430], want_response: true }, ItemSet { range: Range(449, 463), items: [449], want_response: true }, ItemSet { range: Range(463, 501), items: [495], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [40, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 366), items: [324, 349, 352, 353], want_response: false }, ItemSet { range: Range(366, 401), items: [366, 379, 384, 388], want_response: false }, ItemSet { range: Range(401, 449), items: [401, 408, 426], want_response: false }, ItemSet { range: Range(449, 463), items: [452], want_response: false }, ItemSet { range: Range(463, 501), items: [463, 469, 481, 496], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(40, true), (62, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (495, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 67, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 40, 62, 83, 87, 103, 109, 133, 142, 148, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(65, SumMonoid(31826)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(16, SumMonoid(1386)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(15, SumMonoid(4885)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 65), fp: EncodedCountingMonoid(5, SumMonoid(131)) }, Fingerprint { range: Range(65, 103), fp: EncodedCountingMonoid(4, SumMonoid(312)) }, Fingerprint { range: Range(103, 155), fp: EncodedCountingMonoid(4, SumMonoid(473)) }, Fingerprint { range: Range(155, 165), fp: EncodedCountingMonoid(3, SumMonoid(470)) }, Fingerprint { range: Range(165, 272), fp: EncodedCountingMonoid(4, SumMonoid(776)) }, Fingerprint { range: Range(272, 349), fp: EncodedCountingMonoid(4, SumMonoid(1209)) }, Fingerprint { range: Range(349, 430), fp: EncodedCountingMonoid(4, SumMonoid(1526)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(103, 142), fp: EncodedCountingMonoid(3, SumMonoid(345)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 65), items: [40, 62], want_response: true }, ItemSet { range: Range(65, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(142, 155), items: [142, 148], want_response: true }, ItemSet { range: Range(155, 163), items: [159, 161], want_response: true }, ItemSet { range: Range(163, 165), items: [163], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 65), items: [64], want_response: false }, ItemSet { range: Range(65, 87), items: [65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [88], want_response: false }, ItemSet { range: Range(142, 155), items: [], want_response: false }, ItemSet { range: Range(155, 163), items: [155, 156, 159], want_response: false }, ItemSet { range: Range(163, 165), items: [], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(103, 120), items: [108, 119], want_response: true }, ItemSet { range: Range(120, 142), items: [120, 126], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209, 222], want_response: true }, ItemSet { range: Range(225, 272), items: [], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [349, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [40, 62, 67, 83, 87, 142, 148, 161, 163, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(103, 120), items: [103, 109], want_response: false }, ItemSet { range: Range(120, 142), items: [133], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 88, 155, 156, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 108, 119, 120, 126, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(40, true), (62, true), (67, true), (83, true), (87, true), (142, true), (148, true), (161, true), (163, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (155, true), (156, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (108, true), (119, true), (120, true), (126, true), (165, true), (180, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (103, true), (109, true), (133, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 349, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 40, 62, 67, 83, 87, 142, 148, 161, 163, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 155, 156, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 108, 119, 120, 126, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(64, SumMonoid(31477)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(15, SumMonoid(1227)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(15, SumMonoid(4695)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(4, SumMonoid(435)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(437)) }, Fingerprint { range: Range(159, 222), fp: EncodedCountingMonoid(4, SumMonoid(713)) }, Fingerprint { range: Range(222, 324), fp: EncodedCountingMonoid(4, SumMonoid(1100)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(4, SumMonoid(1508)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 190), fp: EncodedCountingMonoid(4, SumMonoid(671)) }, Fingerprint { range: Range(190, 222), fp: EncodedCountingMonoid(3, SumMonoid(603)) }, Fingerprint { range: Range(222, 300), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(126, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(126, 148), items: [126], want_response: false }, ItemSet { range: Range(148, 159), items: [155, 156], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 190), items: [180], want_response: true }, ItemSet { range: Range(190, 222), items: [209], want_response: true }, ItemSet { range: Range(222, 286), items: [222, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 190), items: [188], want_response: false }, ItemSet { range: Range(190, 222), items: [190, 197, 216], want_response: false }, ItemSet { range: Range(222, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (156, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 159, 165, 180, 209, 222, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 156, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 159, 165, 180, 209, 222, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(63, SumMonoid(31321)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(15, SumMonoid(1230)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(14, SumMonoid(4536)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 65), fp: EncodedCountingMonoid(5, SumMonoid(131)) }, Fingerprint { range: Range(65, 103), fp: EncodedCountingMonoid(4, SumMonoid(312)) }, Fingerprint { range: Range(103, 126), fp: EncodedCountingMonoid(3, SumMonoid(347)) }, Fingerprint { range: Range(126, 165), fp: EncodedCountingMonoid(3, SumMonoid(440)) }, Fingerprint { range: Range(165, 272), fp: EncodedCountingMonoid(4, SumMonoid(776)) }, Fingerprint { range: Range(272, 349), fp: EncodedCountingMonoid(4, SumMonoid(1209)) }, Fingerprint { range: Range(349, 430), fp: EncodedCountingMonoid(3, SumMonoid(1177)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(126, 159), fp: EncodedCountingMonoid(3, SumMonoid(423)) }, Fingerprint { range: Range(159, 165), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 65), items: [40, 62], want_response: true }, ItemSet { range: Range(65, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(103, 126), items: [103, 109], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 65), items: [64], want_response: false }, ItemSet { range: Range(65, 87), items: [65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [88], want_response: false }, ItemSet { range: Range(103, 126), items: [108, 119, 120], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(126, 159), items: [126, 155], want_response: true }, ItemSet { range: Range(159, 165), items: [159], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209, 222], want_response: true }, ItemSet { range: Range(225, 272), items: [], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [40, 62, 67, 83, 87, 103, 109, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(159, 165), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 126, 155, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (126, true), (155, true), (165, true), (180, true), (209, true), (222, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 159, 165, 180, 209, 222, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 40, 62, 67, 83, 87, 103, 109, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 126, 155, 165, 180, 209, 222, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(62, SumMonoid(31099)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(14, SumMonoid(1071)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(14, SumMonoid(4473)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(87, 120), fp: EncodedCountingMonoid(3, SumMonoid(315)) }, Fingerprint { range: Range(120, 159), fp: EncodedCountingMonoid(3, SumMonoid(401)) }, Fingerprint { range: Range(159, 272), fp: EncodedCountingMonoid(4, SumMonoid(713)) }, Fingerprint { range: Range(272, 324), fp: EncodedCountingMonoid(3, SumMonoid(878)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(4, SumMonoid(1508)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 197), fp: EncodedCountingMonoid(5, SumMonoid(861)) }, Fingerprint { range: Range(197, 272), fp: EncodedCountingMonoid(5, SumMonoid(1170)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 324), fp: EncodedCountingMonoid(3, SumMonoid(950)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 120), items: [109], want_response: true }, ItemSet { range: Range(120, 148), items: [133, 142], want_response: true }, ItemSet { range: Range(148, 159), items: [148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88, 108], want_response: false }, ItemSet { range: Range(109, 120), items: [119], want_response: false }, ItemSet { range: Range(120, 148), items: [120, 126], want_response: false }, ItemSet { range: Range(148, 159), items: [155], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 197), items: [180], want_response: true }, ItemSet { range: Range(197, 272), items: [209], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 197), items: [188, 190], want_response: false }, ItemSet { range: Range(197, 272), items: [197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 324), items: [309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (108, true), (119, true), (120, true), (126, true), (155, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [64, 65, 74, 85, 88, 108, 119, 120, 126, 155, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 88, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(61, SumMonoid(30991)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(14, SumMonoid(1122)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(13, SumMonoid(4314)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 65), fp: EncodedCountingMonoid(5, SumMonoid(131)) }, Fingerprint { range: Range(65, 103), fp: EncodedCountingMonoid(4, SumMonoid(312)) }, Fingerprint { range: Range(103, 155), fp: EncodedCountingMonoid(3, SumMonoid(365)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(4, SumMonoid(826)) }, Fingerprint { range: Range(286, 349), fp: EncodedCountingMonoid(3, SumMonoid(937)) }, Fingerprint { range: Range(349, 430), fp: EncodedCountingMonoid(3, SumMonoid(1177)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(155, 165), items: [155, 159], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(103, 142), fp: EncodedCountingMonoid(3, SumMonoid(345)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(286, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(155, 165), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(40, 65), items: [40, 62], want_response: true }, ItemSet { range: Range(65, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(142, 155), items: [142, 148], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [155], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 65), items: [64], want_response: false }, ItemSet { range: Range(65, 87), items: [65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [88], want_response: false }, ItemSet { range: Range(142, 155), items: [], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 142), items: [126], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [272], want_response: true }, ItemSet { range: Range(286, 309), items: [286], want_response: true }, ItemSet { range: Range(309, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 430), items: [394, 401], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [161, 163, 40, 62, 67, 83, 87, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986], provide: [(155, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 142), items: [133], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 88, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(161, true), (163, true), (40, true), (62, true), (67, true), (83, true), (87, true), (142, true), (148, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (119, true), (120, true), (126, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (103, true), (109, true), (133, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 88, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 401, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 161, 163, 40, 62, 67, 83, 87, 142, 148, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [155, 64, 65, 74, 85, 88, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 88, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(60, SumMonoid(30590)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(13, SumMonoid(963)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(13, SumMonoid(4072)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(87, 126), fp: EncodedCountingMonoid(3, SumMonoid(327)) }, Fingerprint { range: Range(159, 272), fp: EncodedCountingMonoid(4, SumMonoid(713)) }, Fingerprint { range: Range(272, 324), fp: EncodedCountingMonoid(3, SumMonoid(878)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(3, SumMonoid(1107)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(126, 159), items: [126, 155], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 197), fp: EncodedCountingMonoid(5, SumMonoid(861)) }, Fingerprint { range: Range(197, 272), fp: EncodedCountingMonoid(5, SumMonoid(1170)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 324), fp: EncodedCountingMonoid(3, SumMonoid(950)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 109), items: [87, 103], want_response: true }, ItemSet { range: Range(109, 126), items: [109], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [126, 155], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 109), items: [88], want_response: false }, ItemSet { range: Range(109, 126), items: [119, 120], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 197), items: [180], want_response: true }, ItemSet { range: Range(197, 272), items: [209], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 324), items: [320], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [133, 142, 148, 40, 62, 67, 83, 87, 103, 109, 481, 496, 598, 599, 712, 850, 894, 986], provide: [(126, true), (155, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 197), items: [188, 190], want_response: false }, ItemSet { range: Range(197, 272), items: [197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 324), items: [309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 88, 119, 120, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(133, true), (142, true), (148, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (88, true), (119, true), (120, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 88, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 133, 142, 148, 40, 62, 67, 83, 87, 103, 109, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [126, 155, 64, 65, 74, 85, 88, 119, 120, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(59, SumMonoid(30502)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(13, SumMonoid(1034)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(12, SumMonoid(3913)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(103, 155), fp: EncodedCountingMonoid(3, SumMonoid(365)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(4, SumMonoid(826)) }, Fingerprint { range: Range(286, 349), fp: EncodedCountingMonoid(3, SumMonoid(937)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(155, 165), items: [155, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(103, 142), fp: EncodedCountingMonoid(3, SumMonoid(345)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(286, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(155, 165), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(142, 155), items: [142, 148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [155, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(142, 155), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 142), items: [126], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [272], want_response: true }, ItemSet { range: Range(286, 309), items: [286], want_response: true }, ItemSet { range: Range(309, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 142, 148, 598, 599, 712, 850, 894, 986], provide: [(155, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 142), items: [133], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (119, true), (120, true), (126, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (103, true), (109, true), (133, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 142, 148, 598, 599, 712, 850, 894, 986, 7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [155, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(58, SumMonoid(29898)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(13, SumMonoid(1034)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(12, SumMonoid(3913)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10621)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(103, 155), fp: EncodedCountingMonoid(3, SumMonoid(365)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(4, SumMonoid(826)) }, Fingerprint { range: Range(286, 349), fp: EncodedCountingMonoid(3, SumMonoid(937)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(5, SumMonoid(3376)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(155, 165), items: [155, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(103, 142), fp: EncodedCountingMonoid(3, SumMonoid(345)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(286, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(155, 165), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(142, 155), items: [142, 148], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [155, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(142, 155), items: [], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 142), items: [126], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [272], want_response: true }, ItemSet { range: Range(286, 309), items: [286], want_response: true }, ItemSet { range: Range(309, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530, 568], want_response: true }, ItemSet { range: Range(579, 615), items: [583, 596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 142, 148, 712, 743, 894, 899, 986], provide: [(155, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 142), items: [133], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (142, true), (148, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (119, true), (120, true), (126, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (103, true), (109, true), (133, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 142, 148, 712, 743, 894, 899, 986, 7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [155, 449, 495, 64, 65, 74, 85, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(59, SumMonoid(30502)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(13, SumMonoid(1034)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(12, SumMonoid(3913)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(103, 155), fp: EncodedCountingMonoid(3, SumMonoid(365)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(4, SumMonoid(826)) }, Fingerprint { range: Range(286, 349), fp: EncodedCountingMonoid(3, SumMonoid(937)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(155, 165), items: [155, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(103, 142), fp: EncodedCountingMonoid(3, SumMonoid(345)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(286, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(155, 165), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(142, 155), items: [142, 148], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [155, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(142, 155), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 142), items: [126], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [272], want_response: true }, ItemSet { range: Range(286, 309), items: [286], want_response: true }, ItemSet { range: Range(309, 349), items: [320, 331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 142, 148, 598, 599, 712, 850, 894, 986], provide: [(155, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 142), items: [133], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(286, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (142, true), (148, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (119, true), (120, true), (126, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (103, true), (109, true), (133, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 320, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 142, 148, 598, 599, 712, 850, 894, 986, 7, 31, 39, 103, 109, 133, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [155, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 119, 120, 126, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(58, SumMonoid(30182)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(12, SumMonoid(875)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(12, SumMonoid(3752)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(3, SumMonoid(1107)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126, 155], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 155], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (155, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (40, true), (62, true), (67, true), (83, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 155, 64, 65, 74, 85, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(57, SumMonoid(29521)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(12, SumMonoid(875)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(12, SumMonoid(3752)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10564)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(3, SumMonoid(1107)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2715)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126, 155], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 126, 155], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (126, true), (155, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 495, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (40, true), (62, true), (67, true), (83, true), (481, true), (496, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (495, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 155, 64, 65, 74, 85, 495, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(58, SumMonoid(30182)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(12, SumMonoid(875)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(12, SumMonoid(3752)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(3, SumMonoid(1107)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126, 155], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 155], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (155, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (40, true), (62, true), (67, true), (83, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 155, 64, 65, 74, 85, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(57, SumMonoid(29299)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(12, SumMonoid(875)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(12, SumMonoid(3752)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(16, SumMonoid(14187)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(3, SumMonoid(1107)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 832), fp: EncodedCountingMonoid(4, SumMonoid(3114)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(4, SumMonoid(3443)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126, 155], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 155], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(795, 832), items: [803, 827], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 884, 889], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 795, 830, 837, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (155, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 495, 604, 707, 727, 731, 803, 827, 832, 838, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (40, true), (62, true), (67, true), (83, true), (481, true), (496, true), (598, true), (599, true), (712, true), (795, true), (830, true), (837, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (495, true), (604, true), (707, true), (727, true), (731, true), (803, true), (827, true), (832, true), (838, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 795, 830, 837, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 155, 64, 65, 74, 85, 495, 604, 707, 727, 731, 803, 827, 832, 838, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 155, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(58, SumMonoid(30182)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(12, SumMonoid(875)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(12, SumMonoid(3752)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 430), fp: EncodedCountingMonoid(3, SumMonoid(1107)) }, Fingerprint { range: Range(430, 501), fp: EncodedCountingMonoid(3, SumMonoid(1374)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126, 155], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 430), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(430, 481), fp: EncodedCountingMonoid(3, SumMonoid(1384)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 155], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(481, 501), items: [495], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331, 382], want_response: true }, ItemSet { range: Range(384, 430), items: [394], want_response: true }, ItemSet { range: Range(430, 481), items: [430, 449], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (155, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 430), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(430, 481), items: [452, 463, 469], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (40, true), (62, true), (67, true), (83, true), (481, true), (496, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (495, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (449, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 155, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 40, 62, 67, 83, 481, 496, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 155, 64, 65, 74, 85, 495, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 449, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(57, SumMonoid(30027)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(12, SumMonoid(879)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(11, SumMonoid(3593)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 272), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(272, 349), fp: EncodedCountingMonoid(3, SumMonoid(889)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 165), items: [126, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 165), items: [133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 272), items: [], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 349), items: [331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(56, SumMonoid(29300)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(12, SumMonoid(879)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(11, SumMonoid(3593)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10498)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 272), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(272, 349), fp: EncodedCountingMonoid(3, SumMonoid(889)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 744), fp: EncodedCountingMonoid(4, SumMonoid(2883)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 165), items: [126, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 165), items: [133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 743), items: [705, 712], want_response: true }, ItemSet { range: Range(743, 744), items: [743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 743), items: [705, 707, 731, 740], want_response: false }, ItemSet { range: Range(743, 744), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 272), items: [], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 349), items: [331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(57, SumMonoid(30027)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(12, SumMonoid(879)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(11, SumMonoid(3593)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 272), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(272, 349), fp: EncodedCountingMonoid(3, SumMonoid(889)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 165), items: [126, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 165), items: [133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 272), items: [], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 349), items: [331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(56, SumMonoid(29143)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(12, SumMonoid(879)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(11, SumMonoid(3593)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(16, SumMonoid(14186)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 272), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(272, 349), fp: EncodedCountingMonoid(3, SumMonoid(889)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 832), fp: EncodedCountingMonoid(4, SumMonoid(3114)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(4, SumMonoid(3442)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 165), items: [126, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 165), items: [133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(795, 832), items: [803, 827], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 883, 889], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 272), items: [], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 349), items: [331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 795, 830, 837, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 803, 827, 832, 838, 883, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (795, true), (830, true), (837, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (803, true), (827, true), (832, true), (838, true), (883, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 795, 830, 837, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 803, 827, 832, 838, 883, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 382, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(57, SumMonoid(30027)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(12, SumMonoid(879)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(11, SumMonoid(3593)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 272), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(272, 349), fp: EncodedCountingMonoid(3, SumMonoid(889)) }, Fingerprint { range: Range(349, 449), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 165), items: [126, 159], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 272), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(272, 309), fp: EncodedCountingMonoid(4, SumMonoid(1179)) }, Fingerprint { range: Range(309, 349), fp: EncodedCountingMonoid(4, SumMonoid(1274)) }, Fingerprint { range: Range(349, 384), fp: EncodedCountingMonoid(5, SumMonoid(1799)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 126), items: [103, 109], want_response: false }, ItemSet { range: Range(126, 165), items: [133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 272), items: [], want_response: true }, ItemSet { range: Range(272, 309), items: [272, 286], want_response: true }, ItemSet { range: Range(309, 349), items: [331], want_response: true }, ItemSet { range: Range(349, 384), items: [382], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 272), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(272, 309), items: [286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 349), items: [309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 384), items: [349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (382, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 382, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 161, 163, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 382, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(56, SumMonoid(29645)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(11, SumMonoid(3370)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(55, SumMonoid(29141)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(11, SumMonoid(3370)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10721)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(4, SumMonoid(2089)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(5, SumMonoid(3376)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 526), items: [515, 516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 526), items: [501, 502, 519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (394, true), (430, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(56, SumMonoid(29645)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(11, SumMonoid(3370)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(55, SumMonoid(28963)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(11, SumMonoid(3370)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10543)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2694)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(56, SumMonoid(29645)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(11, SumMonoid(3370)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(55, SumMonoid(29115)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(11, SumMonoid(3370)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10695)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(5, SumMonoid(3376)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 126, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 272, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(56, SumMonoid(29645)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(11, SumMonoid(3370)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(209, 324), fp: EncodedCountingMonoid(3, SumMonoid(767)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(209, 300), fp: EncodedCountingMonoid(6, SumMonoid(1551)) }, Fingerprint { range: Range(300, 324), fp: EncodedCountingMonoid(5, SumMonoid(1551)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(209, 286), items: [209, 272], want_response: true }, ItemSet { range: Range(286, 300), items: [286], want_response: true }, ItemSet { range: Range(300, 324), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 286), items: [216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 300), items: [286, 292], want_response: false }, ItemSet { range: Range(300, 324), items: [300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (272, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 272, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 272, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(55, SumMonoid(29373)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(11, SumMonoid(720)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(10, SumMonoid(3098)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 126), items: [119, 120], want_response: true }, ItemSet { range: Range(126, 159), items: [126], want_response: true }, ItemSet { range: Range(209, 324), items: [209, 286], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 126), items: [87, 103, 109], want_response: false }, ItemSet { range: Range(126, 159), items: [133, 142, 148], want_response: false }, ItemSet { range: Range(209, 324), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 126, 209, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (126, true), (209, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 126, 159, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 126, 209, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 159, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(54, SumMonoid(29247)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 159), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(159, 501), fp: EncodedCountingMonoid(10, SumMonoid(3098)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 87), fp: EncodedCountingMonoid(7, SumMonoid(329)) }, Fingerprint { range: Range(87, 159), fp: EncodedCountingMonoid(6, SumMonoid(722)) }, Fingerprint { range: Range(159, 324), fp: EncodedCountingMonoid(17, SumMonoid(4160)) }, Fingerprint { range: Range(324, 501), fp: EncodedCountingMonoid(16, SumMonoid(6491)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 87), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(159, 209), fp: EncodedCountingMonoid(3, SumMonoid(504)) }, Fingerprint { range: Range(324, 449), fp: EncodedCountingMonoid(3, SumMonoid(1155)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(87, 159), items: [119, 120], want_response: true }, ItemSet { range: Range(209, 324), items: [209, 286], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(159, 188), fp: EncodedCountingMonoid(3, SumMonoid(483)) }, Fingerprint { range: Range(188, 209), fp: EncodedCountingMonoid(3, SumMonoid(575)) }, Fingerprint { range: Range(324, 384), fp: EncodedCountingMonoid(6, SumMonoid(2123)) }, Fingerprint { range: Range(384, 449), fp: EncodedCountingMonoid(5, SumMonoid(2007)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(87, 159), items: [87, 103, 109, 133, 142, 148], want_response: false }, ItemSet { range: Range(209, 324), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 209, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(159, 180), items: [159, 165], want_response: true }, ItemSet { range: Range(180, 188), items: [180], want_response: true }, ItemSet { range: Range(188, 209), items: [], want_response: true }, ItemSet { range: Range(324, 384), items: [331], want_response: true }, ItemSet { range: Range(384, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (209, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(159, 180), items: [159, 161, 163], want_response: false }, ItemSet { range: Range(180, 188), items: [], want_response: false }, ItemSet { range: Range(188, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(324, 384), items: [324, 349, 352, 353, 366, 379], want_response: false }, ItemSet { range: Range(384, 449), items: [384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 161, 163, 188, 190, 197, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (331, true), (394, true), (430, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (161, true), (163, true), (188, true), (190, true), (197, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 159, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 87, 103, 109, 133, 142, 148, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 452, 463, 469, 481, 496, 40, 62, 67, 83, 598, 599, 712, 850, 894, 986, 7, 31, 39, 161, 163, 188, 190, 197, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 209, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 331, 394, 430, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(53, SumMonoid(29088)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(52, SumMonoid(28431)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10568)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2719)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 676), items: [661, 671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(53, SumMonoid(29088)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(52, SumMonoid(28573)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10710)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(4, SumMonoid(2078)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(5, SumMonoid(3376)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 526), items: [504, 516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 526), items: [501, 502, 519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(53, SumMonoid(29088)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(52, SumMonoid(28572)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10709)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(4, SumMonoid(2077)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(5, SumMonoid(3376)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 526), items: [504, 515], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 526), items: [501, 502, 519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 528, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(53, SumMonoid(29088)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(52, SumMonoid(28285)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(16, SumMonoid(14267)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(4, SumMonoid(3143)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(795, 838), items: [827, 832], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 827, 832, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 795, 830, 837, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (827, true), (832, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 795, 830, 837, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 827, 832, 906, 919, 925, 960]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(53, SumMonoid(29088)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(52, SumMonoid(28560)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 744), fp: EncodedCountingMonoid(17, SumMonoid(10697)) }, Fingerprint { range: Range(744, 993), fp: EncodedCountingMonoid(16, SumMonoid(14330)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 744), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(744, 916), fp: EncodedCountingMonoid(8, SumMonoid(6606)) }, Fingerprint { range: Range(916, 993), fp: EncodedCountingMonoid(7, SumMonoid(6597)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(4, SumMonoid(2065)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(5, SumMonoid(3376)) }, Fingerprint { range: Range(707, 744), fp: EncodedCountingMonoid(4, SumMonoid(2905)) }, Fingerprint { range: Range(744, 883), fp: EncodedCountingMonoid(5, SumMonoid(4044)) }, Fingerprint { range: Range(883, 916), fp: EncodedCountingMonoid(4, SumMonoid(3562)) }, Fingerprint { range: Range(916, 978), fp: EncodedCountingMonoid(4, SumMonoid(3765)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(744, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }, Fingerprint { range: Range(916, 940), fp: EncodedCountingMonoid(3, SumMonoid(2771)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(707, 744), items: [712, 743], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(707, 744), items: [707, 727, 731, 740], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889, 906], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682, 705], want_response: true }, ItemSet { range: Range(744, 827), items: [744, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [832, 838], want_response: true }, ItemSet { range: Range(916, 940), items: [919, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [960, 961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(744, 827), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }, ItemSet { range: Range(916, 940), items: [916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (743, true), (894, true), (899, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (740, true), (883, true), (884, true), (889, true), (906, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (744, true), (803, true), (827, true), (832, true), (838, true), (919, true), (925, true), (960, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 743, 894, 899, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 746, 755, 795, 830, 837, 850, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 740, 883, 884, 889, 906, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 530, 568, 583, 596, 657, 661, 671, 682, 744, 803, 827, 832, 838, 919, 925, 960, 961]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 64, 65, 67, 74, 83, 85, 87, 103, 109, 119, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 530, 539, 547, 548, 562, 568, 577, 579, 581, 583, 596, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 744, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 906, 916, 919, 923, 925, 932, 940, 945, 955, 960, 961, 978, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(53, SumMonoid(29088)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(10, SumMonoid(594)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(9, SumMonoid(2939)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(4, SumMonoid(288)) }, Fingerprint { range: Range(165, 286), fp: EncodedCountingMonoid(3, SumMonoid(554)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(286, 349), items: [286, 331], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(165, 225), fp: EncodedCountingMonoid(4, SumMonoid(791)) }, Fingerprint { range: Range(225, 286), fp: EncodedCountingMonoid(3, SumMonoid(757)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [119, 120, 331, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 65, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 225), items: [209], want_response: true }, ItemSet { range: Range(225, 286), items: [], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986], provide: [(119, true), (120, true), (331, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 225), items: [216], want_response: false }, ItemSet { range: Range(225, 286), items: [225, 261, 271], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (65, true), (74, true), (85, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (165, true), (180, true), (209, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 331, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 598, 599, 712, 850, 894, 986, 7, 31, 39, 188, 190, 197, 216, 225, 261, 271, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 331, 394, 430, 449, 495, 64, 65, 74, 85, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 6, 17, 21, 23, 165, 180, 209, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(52, SumMonoid(28757)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(9, SumMonoid(474)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(9, SumMonoid(2728)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(17, SumMonoid(15070)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(3, SumMonoid(152)) }, Fingerprint { range: Range(120, 209), fp: EncodedCountingMonoid(3, SumMonoid(465)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 961), fp: EncodedCountingMonoid(4, SumMonoid(3710)) }, Fingerprint { range: Range(961, 993), fp: EncodedCountingMonoid(4, SumMonoid(3920)) }], item_sets: [ItemSet { range: Range(67, 119), items: [74, 85], want_response: true }, ItemSet { range: Range(119, 120), items: [119], want_response: true }, ItemSet { range: Range(209, 320), items: [209, 286], want_response: true }, ItemSet { range: Range(320, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(120, 163), fp: EncodedCountingMonoid(5, SumMonoid(743)) }, Fingerprint { range: Range(163, 209), fp: EncodedCountingMonoid(4, SumMonoid(738)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 961), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(67, 119), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(119, 120), items: [], want_response: false }, ItemSet { range: Range(209, 320), items: [216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 449), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(23, 40), items: [31, 39], want_response: true }, ItemSet { range: Range(40, 67), items: [40, 62], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(961, 993), items: [986], want_response: true }], wants: [74, 85, 119, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(23, 40), items: [23], want_response: false }, ItemSet { range: Range(40, 67), items: [64, 65], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(961, 993), items: [961, 978, 989, 992], want_response: false }, ItemSet { range: Range(120, 163), items: [120], want_response: true }, ItemSet { range: Range(163, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 961), items: [960], want_response: true }], wants: [67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 598, 599, 712, 850, 894, 986], provide: [(74, true), (85, true), (119, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 163), items: [133, 142, 148, 159, 161], want_response: false }, ItemSet { range: Range(163, 209), items: [163, 188, 190, 197], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 961), items: [940, 945, 955], want_response: false }], wants: [6, 17, 21, 23, 64, 65, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960], provide: [(67, true), (83, true), (87, true), (103, true), (109, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (31, true), (39, true), (40, true), (62, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(6, true), (17, true), (21, true), (23, true), (64, true), (65, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (961, true), (978, true), (989, true), (992, true), (120, true), (165, true), (180, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (960, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 960, 961, 978, 989, 992} + [993, 67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 598, 599, 712, 850, 894, 986, 133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [74, 85, 119, 209, 394, 430, 449, 495, 6, 17, 21, 23, 64, 65, 604, 707, 727, 731, 838, 883, 884, 889, 961, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 960]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(51, SumMonoid(27797)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(9, SumMonoid(474)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(9, SumMonoid(2728)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(17, SumMonoid(10485)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(16, SumMonoid(14110)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(3, SumMonoid(152)) }, Fingerprint { range: Range(120, 209), fp: EncodedCountingMonoid(3, SumMonoid(465)) }, Fingerprint { range: Range(501, 568), fp: EncodedCountingMonoid(5, SumMonoid(2593)) }, Fingerprint { range: Range(568, 615), fp: EncodedCountingMonoid(4, SumMonoid(2351)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(4, SumMonoid(3711)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(67, 119), items: [74, 85], want_response: true }, ItemSet { range: Range(119, 120), items: [119], want_response: true }, ItemSet { range: Range(209, 320), items: [209, 286], want_response: true }, ItemSet { range: Range(320, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(120, 163), fp: EncodedCountingMonoid(5, SumMonoid(743)) }, Fingerprint { range: Range(163, 209), fp: EncodedCountingMonoid(4, SumMonoid(738)) }, Fingerprint { range: Range(501, 526), fp: EncodedCountingMonoid(5, SumMonoid(2567)) }, Fingerprint { range: Range(526, 568), fp: EncodedCountingMonoid(5, SumMonoid(2722)) }, Fingerprint { range: Range(568, 598), fp: EncodedCountingMonoid(3, SumMonoid(1737)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(67, 119), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(119, 120), items: [], want_response: false }, ItemSet { range: Range(209, 320), items: [216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 449), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(23, 40), items: [31, 39], want_response: true }, ItemSet { range: Range(40, 67), items: [40, 62], want_response: true }, ItemSet { range: Range(598, 615), items: [598, 599], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [74, 85, 119, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(23, 40), items: [23], want_response: false }, ItemSet { range: Range(40, 67), items: [64, 65], want_response: false }, ItemSet { range: Range(598, 615), items: [604], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(120, 163), items: [120], want_response: true }, ItemSet { range: Range(163, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 526), items: [516], want_response: true }, ItemSet { range: Range(526, 568), items: [528, 530], want_response: true }, ItemSet { range: Range(568, 596), items: [568, 583], want_response: true }, ItemSet { range: Range(596, 598), items: [596], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 978), items: [961], want_response: true }], wants: [67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 598, 599, 712, 850, 894, 986], provide: [(74, true), (85, true), (119, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 163), items: [133, 142, 148, 159, 161], want_response: false }, ItemSet { range: Range(163, 209), items: [163, 188, 190, 197], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 568), items: [526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(568, 596), items: [577, 579, 581], want_response: false }, ItemSet { range: Range(596, 598), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [6, 17, 21, 23, 64, 65, 604, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 961], provide: [(67, true), (83, true), (87, true), (103, true), (109, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (31, true), (39, true), (40, true), (62, true), (598, true), (599, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(6, true), (17, true), (21, true), (23, true), (64, true), (65, true), (604, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (978, true), (989, true), (992, true), (120, true), (165, true), (180, true), (504, true), (515, true), (516, true), (528, true), (530, true), (568, true), (583, true), (596, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 568, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992} + [993, 67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 598, 599, 712, 850, 894, 986, 133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [74, 85, 119, 209, 394, 430, 449, 495, 6, 17, 21, 23, 64, 65, 604, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 568, 583, 596, 657, 661, 671, 682, 740, 744, 906, 919, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(50, SumMonoid(27229)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(9, SumMonoid(474)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(9, SumMonoid(2728)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(16, SumMonoid(9917)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(16, SumMonoid(14110)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(3, SumMonoid(152)) }, Fingerprint { range: Range(120, 209), fp: EncodedCountingMonoid(3, SumMonoid(465)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2313)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(5, SumMonoid(3946)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(4, SumMonoid(3711)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(67, 119), items: [74, 85], want_response: true }, ItemSet { range: Range(119, 120), items: [119], want_response: true }, ItemSet { range: Range(209, 320), items: [209, 286], want_response: true }, ItemSet { range: Range(320, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(120, 163), fp: EncodedCountingMonoid(5, SumMonoid(743)) }, Fingerprint { range: Range(163, 209), fp: EncodedCountingMonoid(4, SumMonoid(738)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(67, 119), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(119, 120), items: [], want_response: false }, ItemSet { range: Range(209, 320), items: [216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 449), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(23, 40), items: [31, 39], want_response: true }, ItemSet { range: Range(40, 67), items: [40, 62], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [74, 85, 119, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(23, 40), items: [23], want_response: false }, ItemSet { range: Range(40, 67), items: [64, 65], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(120, 163), items: [120], want_response: true }, ItemSet { range: Range(163, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 604), items: [583, 596], want_response: true }, ItemSet { range: Range(604, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740, 744], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 978), items: [961], want_response: true }], wants: [67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 712, 850, 894, 986], provide: [(74, true), (85, true), (119, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 163), items: [133, 142, 148, 159, 161], want_response: false }, ItemSet { range: Range(163, 209), items: [163, 188, 190, 197], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 604), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(604, 615), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [6, 17, 21, 23, 64, 65, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 744, 906, 919, 925, 961], provide: [(67, true), (83, true), (87, true), (103, true), (109, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (31, true), (39, true), (40, true), (62, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(6, true), (17, true), (21, true), (23, true), (64, true), (65, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (978, true), (989, true), (992, true), (120, true), (165, true), (180, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (596, true), (604, true), (657, true), (661, true), (671, true), (682, true), (740, true), (744, true), (906, true), (919, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 744, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992} + [993, 67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 712, 850, 894, 986, 133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [74, 85, 119, 209, 394, 430, 449, 495, 6, 17, 21, 23, 64, 65, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 744, 906, 919, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(49, SumMonoid(26485)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(9, SumMonoid(474)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(9, SumMonoid(2728)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(16, SumMonoid(9917)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(15, SumMonoid(13366)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(3, SumMonoid(152)) }, Fingerprint { range: Range(120, 209), fp: EncodedCountingMonoid(3, SumMonoid(465)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2313)) }, Fingerprint { range: Range(615, 705), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(705, 740), fp: EncodedCountingMonoid(4, SumMonoid(2870)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(4, SumMonoid(3202)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(4, SumMonoid(3711)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(67, 119), items: [74, 85], want_response: true }, ItemSet { range: Range(119, 120), items: [119], want_response: true }, ItemSet { range: Range(209, 320), items: [209, 286], want_response: true }, ItemSet { range: Range(320, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(120, 163), fp: EncodedCountingMonoid(5, SumMonoid(743)) }, Fingerprint { range: Range(163, 209), fp: EncodedCountingMonoid(4, SumMonoid(738)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 668), fp: EncodedCountingMonoid(6, SumMonoid(3883)) }, Fingerprint { range: Range(668, 705), fp: EncodedCountingMonoid(6, SumMonoid(4085)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(67, 119), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(119, 120), items: [], want_response: false }, ItemSet { range: Range(209, 320), items: [216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 449), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(23, 40), items: [31, 39], want_response: true }, ItemSet { range: Range(40, 67), items: [40, 62], want_response: true }, ItemSet { range: Range(705, 740), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [74, 85, 119, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(23, 40), items: [23], want_response: false }, ItemSet { range: Range(40, 67), items: [64, 65], want_response: false }, ItemSet { range: Range(705, 740), items: [705, 707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(120, 163), items: [120], want_response: true }, ItemSet { range: Range(163, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 604), items: [583, 596], want_response: true }, ItemSet { range: Range(604, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 668), items: [657, 661], want_response: true }, ItemSet { range: Range(668, 705), items: [671, 682], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 978), items: [961], want_response: true }], wants: [67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 712, 850, 894, 986], provide: [(74, true), (85, true), (119, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 163), items: [133, 142, 148, 159, 161], want_response: false }, ItemSet { range: Range(163, 209), items: [163, 188, 190, 197], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 604), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(604, 615), items: [], want_response: false }, ItemSet { range: Range(615, 668), items: [615, 642, 650, 654, 655, 667], want_response: false }, ItemSet { range: Range(668, 705), items: [668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [6, 17, 21, 23, 64, 65, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 919, 925, 961], provide: [(67, true), (83, true), (87, true), (103, true), (109, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (31, true), (39, true), (40, true), (62, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(6, true), (17, true), (21, true), (23, true), (64, true), (65, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (978, true), (989, true), (992, true), (120, true), (165, true), (180, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (596, true), (604, true), (657, true), (661, true), (671, true), (682, true), (740, true), (906, true), (919, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 705, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992} + [993, 67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 712, 850, 894, 986, 133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [74, 85, 119, 209, 394, 430, 449, 495, 6, 17, 21, 23, 64, 65, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 919, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(48, SumMonoid(25780)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(9, SumMonoid(474)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(9, SumMonoid(2728)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(15, SumMonoid(9212)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(15, SumMonoid(13366)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(3, SumMonoid(152)) }, Fingerprint { range: Range(120, 209), fp: EncodedCountingMonoid(3, SumMonoid(465)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2313)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(707, 740), fp: EncodedCountingMonoid(3, SumMonoid(2165)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(4, SumMonoid(3202)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(4, SumMonoid(3711)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(67, 119), items: [74, 85], want_response: true }, ItemSet { range: Range(119, 120), items: [119], want_response: true }, ItemSet { range: Range(209, 320), items: [209, 286], want_response: true }, ItemSet { range: Range(320, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(120, 163), fp: EncodedCountingMonoid(5, SumMonoid(743)) }, Fingerprint { range: Range(163, 209), fp: EncodedCountingMonoid(4, SumMonoid(738)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(67, 119), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(119, 120), items: [], want_response: false }, ItemSet { range: Range(209, 320), items: [216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 449), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(23, 40), items: [31, 39], want_response: true }, ItemSet { range: Range(40, 67), items: [40, 62], want_response: true }, ItemSet { range: Range(707, 740), items: [712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [74, 85, 119, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(23, 40), items: [23], want_response: false }, ItemSet { range: Range(40, 67), items: [64, 65], want_response: false }, ItemSet { range: Range(707, 740), items: [707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(120, 163), items: [120], want_response: true }, ItemSet { range: Range(163, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 604), items: [583, 596], want_response: true }, ItemSet { range: Range(604, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 978), items: [961], want_response: true }], wants: [67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 712, 850, 894, 986], provide: [(74, true), (85, true), (119, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 163), items: [133, 142, 148, 159, 161], want_response: false }, ItemSet { range: Range(163, 209), items: [163, 188, 190, 197], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 604), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(604, 615), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [6, 17, 21, 23, 64, 65, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 919, 925, 961], provide: [(67, true), (83, true), (87, true), (103, true), (109, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (31, true), (39, true), (40, true), (62, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(6, true), (17, true), (21, true), (23, true), (64, true), (65, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (978, true), (989, true), (992, true), (120, true), (165, true), (180, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (596, true), (604, true), (657, true), (661, true), (671, true), (682, true), (740, true), (906, true), (919, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 65, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992} + [993, 67, 83, 87, 103, 109, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 31, 39, 40, 62, 712, 850, 894, 986, 133, 142, 148, 159, 161, 163, 188, 190, 197, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [74, 85, 119, 209, 394, 430, 449, 495, 6, 17, 21, 23, 64, 65, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 120, 165, 180, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 919, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(47, SumMonoid(25715)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(9, SumMonoid(529)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(8, SumMonoid(2608)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(15, SumMonoid(9212)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(15, SumMonoid(13366)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(3, SumMonoid(223)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2313)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(707, 740), fp: EncodedCountingMonoid(3, SumMonoid(2165)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(4, SumMonoid(3202)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(4, SumMonoid(3711)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 349), items: [209, 286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 349), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(707, 740), items: [712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 165, 180, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(707, 740), items: [707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 604), items: [583, 596], want_response: true }, ItemSet { range: Range(604, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }, ItemSet { range: Range(899, 925), items: [906, 919], want_response: true }, ItemSet { range: Range(925, 940), items: [925], want_response: true }, ItemSet { range: Range(940, 978), items: [961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 712, 850, 894, 986], provide: [(119, true), (120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 604), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(604, 615), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 925), items: [899, 916, 923], want_response: false }, ItemSet { range: Range(925, 940), items: [932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 74, 85, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 6, 17, 21, 23, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 919, 925, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (74, true), (85, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (596, true), (604, true), (657, true), (661, true), (671, true), (682, true), (740, true), (906, true), (919, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 919, 925, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 712, 850, 894, 986, 7, 31, 39, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 165, 180, 209, 394, 430, 449, 495, 64, 74, 85, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 6, 17, 21, 23, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 919, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 64, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(46, SumMonoid(24796)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(9, SumMonoid(529)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(8, SumMonoid(2608)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(15, SumMonoid(9212)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(14, SumMonoid(12447)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 64), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(64, 103), fp: EncodedCountingMonoid(3, SumMonoid(223)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2313)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(707, 740), fp: EncodedCountingMonoid(3, SumMonoid(2165)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(4, SumMonoid(3202)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(3, SumMonoid(2792)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 349), items: [209, 286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 40), fp: EncodedCountingMonoid(3, SumMonoid(77)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 349), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(40, 64), items: [40, 62], want_response: true }, ItemSet { range: Range(64, 87), items: [67, 83], want_response: true }, ItemSet { range: Range(87, 103), items: [87], want_response: true }, ItemSet { range: Range(707, 740), items: [712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 165, 180, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 64), items: [], want_response: false }, ItemSet { range: Range(64, 87), items: [64, 74, 85], want_response: false }, ItemSet { range: Range(87, 103), items: [], want_response: false }, ItemSet { range: Range(707, 740), items: [707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 40), items: [21, 23], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 604), items: [583, 596], want_response: true }, ItemSet { range: Range(604, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }, ItemSet { range: Range(899, 940), items: [906, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 712, 850, 894, 986], provide: [(119, true), (120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 40), items: [31, 39], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 604), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(604, 615), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 940), items: [899, 916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [64, 74, 85, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 6, 17, 21, 23, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 925, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (40, true), (62, true), (67, true), (83, true), (87, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [7, 31, 39, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(64, true), (74, true), (85, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (978, true), (989, true), (992, true), (6, true), (17, true), (21, true), (23, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (596, true), (604, true), (657, true), (661, true), (671, true), (682, true), (740, true), (906, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(7, true), (31, true), (39, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 64, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 40, 62, 67, 83, 87, 712, 850, 894, 986, 7, 31, 39, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 165, 180, 209, 394, 430, 449, 495, 64, 74, 85, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 6, 17, 21, 23, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 978, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(45, SumMonoid(24732)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(8, SumMonoid(465)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(8, SumMonoid(2608)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(15, SumMonoid(9212)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(14, SumMonoid(12447)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2313)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(707, 740), fp: EncodedCountingMonoid(3, SumMonoid(2165)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(4, SumMonoid(3202)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 978), fp: EncodedCountingMonoid(3, SumMonoid(2792)) }, Fingerprint { range: Range(978, 993), fp: EncodedCountingMonoid(3, SumMonoid(2959)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 349), items: [209, 286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 978), fp: EncodedCountingMonoid(3, SumMonoid(2840)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 349), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(707, 740), items: [712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(978, 993), items: [986], want_response: true }], wants: [119, 120, 165, 180, 209, 394, 430, 449, 495], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(707, 740), items: [707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(978, 993), items: [978, 989, 992], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 604), items: [583, 596], want_response: true }, ItemSet { range: Range(604, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }, ItemSet { range: Range(899, 940), items: [906, 925], want_response: true }, ItemSet { range: Range(940, 978), items: [961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 712, 850, 894, 986], provide: [(119, true), (120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 604), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(604, 615), items: [], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 940), items: [899, 916, 923, 932], want_response: false }, ItemSet { range: Range(940, 978), items: [940, 945, 955], want_response: false }], wants: [6, 17, 21, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 23, 74, 85, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 925, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (712, true), (850, true), (894, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955], provide: [(6, true), (17, true), (21, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (978, true), (989, true), (992, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (596, true), (604, true), (657, true), (661, true), (671, true), (682, true), (740, true), (906, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 978, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 712, 850, 894, 986, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 165, 180, 209, 394, 430, 449, 495, 6, 17, 21, 707, 727, 731, 838, 883, 884, 889, 978, 989, 992, 23, 74, 85, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 740, 906, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(44, SumMonoid(23754)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(8, SumMonoid(465)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(8, SumMonoid(2608)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(14, SumMonoid(8481)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(14, SumMonoid(12200)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(4, SumMonoid(2313)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 989), fp: EncodedCountingMonoid(3, SumMonoid(2792)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 349), items: [209, 286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(989, 993), items: [989, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 989), fp: EncodedCountingMonoid(4, SumMonoid(3826)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 349), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(989, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [119, 120, 165, 180, 209, 394, 430, 449, 495, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 604), items: [583, 596], want_response: true }, ItemSet { range: Range(604, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }, ItemSet { range: Range(899, 940), items: [906, 925], want_response: true }, ItemSet { range: Range(940, 989), items: [961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 687, 693, 705, 712, 850, 894], provide: [(119, true), (120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 604), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(604, 615), items: [], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 940), items: [899, 916, 923, 932], want_response: false }, ItemSet { range: Range(940, 989), items: [940, 945, 955, 986], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 731, 740, 906, 925, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (596, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true), (906, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 986]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 165, 180, 209, 394, 430, 449, 495, 989, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 596, 604, 657, 661, 671, 731, 740, 906, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(43, SumMonoid(23158)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(8, SumMonoid(465)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(8, SumMonoid(2608)) }, Fingerprint { range: Range(501, 740), fp: EncodedCountingMonoid(14, SumMonoid(8616)) }, Fingerprint { range: Range(740, 993), fp: EncodedCountingMonoid(13, SumMonoid(11469)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 740), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(740, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(3, SumMonoid(1717)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(4, SumMonoid(2671)) }, Fingerprint { range: Range(707, 740), fp: EncodedCountingMonoid(3, SumMonoid(2165)) }, Fingerprint { range: Range(740, 838), fp: EncodedCountingMonoid(4, SumMonoid(3202)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }, Fingerprint { range: Range(899, 989), fp: EncodedCountingMonoid(3, SumMonoid(2792)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 349), items: [209, 286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(989, 993), items: [989, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(740, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(899, 940), fp: EncodedCountingMonoid(4, SumMonoid(3670)) }, Fingerprint { range: Range(940, 989), fp: EncodedCountingMonoid(4, SumMonoid(3826)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 349), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(989, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(707, 740), items: [712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [119, 120, 165, 180, 209, 394, 430, 449, 495, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(707, 740), items: [707, 727, 731], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 615), items: [583, 604], want_response: true }, ItemSet { range: Range(615, 671), items: [657, 661], want_response: true }, ItemSet { range: Range(671, 676), items: [671], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }, ItemSet { range: Range(899, 940), items: [906, 925], want_response: true }, ItemSet { range: Range(940, 989), items: [961], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 712, 850, 894], provide: [(119, true), (120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 671), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(671, 676), items: [], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(899, 940), items: [899, 916, 923, 932], want_response: false }, ItemSet { range: Range(940, 989), items: [940, 945, 955, 986], want_response: false }], wants: [6, 17, 21, 707, 727, 731, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 740, 906, 925, 961], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (7, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(6, true), (17, true), (21, true), (707, true), (727, true), (731, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (604, true), (657, true), (661, true), (671, true), (682, true), (740, true), (906, true), (925, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 906, 925, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 7, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 899, 916, 923, 932, 940, 945, 955, 986]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 165, 180, 209, 394, 430, 449, 495, 989, 992, 6, 17, 21, 707, 727, 731, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 740, 906, 925, 961]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 925, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(42, SumMonoid(22252)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(8, SumMonoid(465)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(8, SumMonoid(2608)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(13, SumMonoid(7885)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(13, SumMonoid(11294)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(3, SumMonoid(1717)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 165), items: [119, 120], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 349), items: [209, 286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(899, 989), items: [925, 961], want_response: true }, ItemSet { range: Range(989, 993), items: [989, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 349), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(899, 989), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(989, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [119, 120, 165, 180, 209, 394, 430, 449, 495, 925, 961, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 615), items: [583, 604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894], provide: [(119, true), (120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (925, true), (961, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 119, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 925, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [119, 120, 165, 180, 209, 394, 430, 449, 495, 925, 961, 989, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 925, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(41, SumMonoid(22133)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(13, SumMonoid(7885)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(13, SumMonoid(11294)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(3, SumMonoid(1717)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(899, 989), items: [925, 961], want_response: true }, ItemSet { range: Range(989, 993), items: [989, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(899, 989), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(989, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 925, 961, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 615), items: [583, 604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (925, true), (961, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 925, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 925, 961, 989, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(40, SumMonoid(21208)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(13, SumMonoid(7885)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(12, SumMonoid(10369)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(3, SumMonoid(1717)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(899, 992), items: [961, 989], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(899, 992), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 615), items: [583, 604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (961, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(39, SumMonoid(20319)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(12, SumMonoid(7158)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(12, SumMonoid(10207)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(3, SumMonoid(1717)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(727, 832), fp: EncodedCountingMonoid(5, SumMonoid(3828)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(4, SumMonoid(3437)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(899, 992), items: [961, 989], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 992), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 682, 707, 961, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(795, 832), items: [803, 827], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 883, 884], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 615), items: [583, 604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(727, 740), items: [727, 731], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 795, 830, 837, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (682, true), (707, true), (961, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(727, 740), items: [], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 803, 827, 832, 838, 883, 884, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 727, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (795, true), (830, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (604, true), (657, true), (661, true), (671, true), (727, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 795, 830, 837, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 682, 707, 961, 989, 992, 6, 17, 21, 803, 827, 832, 838, 883, 884, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 727, 731, 740]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 74, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 583, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 894, 899, 916, 923, 932, 940, 945, 955, 961, 986, 989, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 74, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 583, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 894, 899, 916, 923, 932, 940, 945, 955, 961, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 74, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 180, 188, 190, 197, 209, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 430, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 583, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 671, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 894, 899, 916, 923, 932, 940, 945, 955, 961, 986, 989, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(40, SumMonoid(21208)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(13, SumMonoid(7885)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(12, SumMonoid(10369)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(3, SumMonoid(1717)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(899, 992), items: [961, 989], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 530), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(530, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(899, 992), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 530), items: [528], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 615), items: [583, 604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (961, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 530), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (583, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 583, 604, 657, 661, 671, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(39, SumMonoid(20625)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(12, SumMonoid(7302)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(12, SumMonoid(10369)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(899, 992), items: [961, 989], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(899, 992), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (961, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 671, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 671, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(39, SumMonoid(20625)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(12, SumMonoid(7302)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(12, SumMonoid(10369)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(899, 992), items: [961, 989], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(899, 992), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (961, true), (989, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 671, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 989, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 961, 989, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 671, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(38, SumMonoid(19636)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(12, SumMonoid(7302)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 682), fp: EncodedCountingMonoid(3, SumMonoid(1989)) }, Fingerprint { range: Range(682, 731), fp: EncodedCountingMonoid(3, SumMonoid(2116)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 667), fp: EncodedCountingMonoid(5, SumMonoid(3216)) }, Fingerprint { range: Range(667, 682), fp: EncodedCountingMonoid(5, SumMonoid(3372)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(682, 705), items: [687, 693], want_response: true }, ItemSet { range: Range(705, 731), items: [705, 712], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(682, 705), items: [682], want_response: false }, ItemSet { range: Range(705, 731), items: [707, 727], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 667), items: [657, 661], want_response: true }, ItemSet { range: Range(667, 682), items: [671], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 667), items: [615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 671, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (687, true), (693, true), (705, true), (712, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (682, true), (707, true), (727, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (671, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 671, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 899, 916, 923, 932, 940, 945, 955, 986, 7, 687, 693, 705, 712, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 961, 992, 6, 17, 21, 682, 707, 727, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 671, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(37, SumMonoid(18965)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 180), fp: EncodedCountingMonoid(8, SumMonoid(511)) }, Fingerprint { range: Range(180, 501), fp: EncodedCountingMonoid(7, SumMonoid(2443)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 180), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(180, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 180), items: [120, 165], want_response: true }, ItemSet { range: Range(180, 286), items: [180, 209], want_response: true }, ItemSet { range: Range(286, 349), items: [286], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 180), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(180, 286), items: [188, 190, 197, 216, 225, 261, 271], want_response: false }, ItemSet { range: Range(286, 349), items: [286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 286, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 707, 727, 961, 992, 6, 17, 21, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(36, SumMonoid(18679)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(7, SumMonoid(346)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(7, SumMonoid(2322)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 165), items: [120], want_response: true }, ItemSet { range: Range(165, 209), items: [165, 180], want_response: true }, ItemSet { range: Range(209, 349), items: [209], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 209), items: [188, 190, 197], want_response: false }, ItemSet { range: Range(209, 349), items: [216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 180, 209, 394, 430, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894], provide: [(120, true), (165, true), (180, true), (209, true), (394, true), (430, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 180, 209, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 180, 209, 394, 430, 449, 495, 707, 727, 961, 992, 6, 17, 21, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 209, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(35, SumMonoid(18499)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(7, SumMonoid(346)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(6, SumMonoid(2142)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(23, 103), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(103, 165), items: [120], want_response: true }, ItemSet { range: Range(165, 349), items: [165, 209], want_response: true }, ItemSet { range: Range(349, 449), items: [394, 430], want_response: true }, ItemSet { range: Range(449, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 67), fp: EncodedCountingMonoid(4, SumMonoid(172)) }, Fingerprint { range: Range(67, 103), fp: EncodedCountingMonoid(3, SumMonoid(237)) }, Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 349), items: [188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 449), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [120, 165, 209, 394, 430, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(23, 67), items: [23], want_response: true }, ItemSet { range: Range(67, 103), items: [74, 85], want_response: true }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894], provide: [(120, true), (165, true), (209, true), (394, true), (430, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 103), items: [67, 83, 87], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (838, true), (883, true), (884, true), (889, true), (23, true), (74, true), (85, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 209, 394, 430, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894, 31, 39, 40, 62, 67, 83, 87, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [120, 165, 209, 394, 430, 449, 495, 707, 727, 961, 992, 6, 17, 21, 838, 883, 884, 889, 23, 74, 85, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 74, 85, 120, 165, 209, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(34, SumMonoid(18069)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(6, SumMonoid(226)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(6, SumMonoid(1832)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 67), items: [21, 23], want_response: true }, ItemSet { range: Range(67, 120), items: [74, 85], want_response: true }, ItemSet { range: Range(120, 209), items: [120, 165], want_response: true }, ItemSet { range: Range(209, 320), items: [209], want_response: true }, ItemSet { range: Range(320, 495), items: [394, 449], want_response: true }, ItemSet { range: Range(495, 501), items: [495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 120), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(120, 209), items: [133, 142, 148, 159, 161, 163, 188, 190, 197], want_response: false }, ItemSet { range: Range(209, 320), items: [216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 495), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(495, 501), items: [496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 74, 85, 120, 165, 209, 394, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (74, true), (85, true), (120, true), (165, true), (209, true), (394, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 74, 85, 120, 165, 209, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 74, 85, 120, 165, 209, 394, 449, 495, 707, 727, 961, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 209, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(33, SumMonoid(17995)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 165), fp: EncodedCountingMonoid(6, SumMonoid(272)) }, Fingerprint { range: Range(165, 501), fp: EncodedCountingMonoid(5, SumMonoid(1712)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 103), fp: EncodedCountingMonoid(8, SumMonoid(416)) }, Fingerprint { range: Range(103, 165), fp: EncodedCountingMonoid(8, SumMonoid(1118)) }, Fingerprint { range: Range(165, 349), fp: EncodedCountingMonoid(15, SumMonoid(4001)) }, Fingerprint { range: Range(349, 501), fp: EncodedCountingMonoid(15, SumMonoid(6167)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 23), fp: EncodedCountingMonoid(3, SumMonoid(44)) }, Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(23, 103), items: [23, 85], want_response: true }, ItemSet { range: Range(103, 165), items: [120], want_response: true }, ItemSet { range: Range(165, 349), items: [165, 209], want_response: true }, ItemSet { range: Range(349, 495), items: [394, 449], want_response: true }, ItemSet { range: Range(495, 501), items: [495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(23, 103), items: [31, 39, 40, 62, 67, 83, 87], want_response: false }, ItemSet { range: Range(103, 165), items: [103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 349), items: [188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(349, 495), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(495, 501), items: [496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(6, 23), items: [7], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [23, 85, 120, 165, 209, 394, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 23), items: [6, 17, 21], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894], provide: [(23, true), (85, true), (120, true), (165, true), (209, true), (394, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [6, 17, 21, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (7, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(6, true), (17, true), (21, true), (838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 209, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 7, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [23, 85, 120, 165, 209, 394, 449, 495, 707, 727, 961, 992, 6, 17, 21, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(32, SumMonoid(17786)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(5, SumMonoid(152)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(5, SumMonoid(1623)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 67), items: [21, 23], want_response: true }, ItemSet { range: Range(67, 120), items: [85], want_response: true }, ItemSet { range: Range(120, 320), items: [120, 165], want_response: true }, ItemSet { range: Range(320, 495), items: [394, 449], want_response: true }, ItemSet { range: Range(495, 501), items: [495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 120), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(120, 320), items: [133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 495), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(495, 501), items: [496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (394, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 707, 727, 961, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(31, SumMonoid(16959)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(5, SumMonoid(152)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(5, SumMonoid(1623)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8553)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(4, SumMonoid(3106)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 67), items: [21, 23], want_response: true }, ItemSet { range: Range(67, 120), items: [85], want_response: true }, ItemSet { range: Range(120, 320), items: [120, 165], want_response: true }, ItemSet { range: Range(320, 495), items: [394, 449], want_response: true }, ItemSet { range: Range(495, 501), items: [495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 120), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(120, 320), items: [133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 495), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(495, 501), items: [496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }, ItemSet { range: Range(795, 838), items: [803, 832], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (394, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740, 803, 832], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true), (803, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 832, 838, 883, 884, 889, 961, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 707, 727, 961, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740, 803, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 961, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 961, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 394, 401, 408, 426, 449, 452, 463, 469, 481, 495, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 961, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(32, SumMonoid(17786)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(5, SumMonoid(152)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(5, SumMonoid(1623)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 67), items: [21, 23], want_response: true }, ItemSet { range: Range(67, 120), items: [85], want_response: true }, ItemSet { range: Range(120, 320), items: [120, 165], want_response: true }, ItemSet { range: Range(320, 495), items: [394, 449], want_response: true }, ItemSet { range: Range(495, 501), items: [495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 120), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(120, 320), items: [133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 495), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(495, 501), items: [496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (394, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 394, 449, 495, 707, 727, 961, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(31, SumMonoid(17392)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(5, SumMonoid(152)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(4, SumMonoid(1229)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(11, SumMonoid(9380)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 67), items: [21, 23], want_response: true }, ItemSet { range: Range(67, 120), items: [85], want_response: true }, ItemSet { range: Range(120, 320), items: [120, 165], want_response: true }, ItemSet { range: Range(320, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [961, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 120), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(120, 320), items: [133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 501), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 449, 495, 707, 727, 961, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (449, true), (495, true), (707, true), (727, true), (961, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 961, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 449, 495, 707, 727, 961, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(30, SumMonoid(16431)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 120), fp: EncodedCountingMonoid(5, SumMonoid(152)) }, Fingerprint { range: Range(120, 501), fp: EncodedCountingMonoid(4, SumMonoid(1229)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 67), fp: EncodedCountingMonoid(5, SumMonoid(179)) }, Fingerprint { range: Range(67, 120), fp: EncodedCountingMonoid(5, SumMonoid(449)) }, Fingerprint { range: Range(120, 320), fp: EncodedCountingMonoid(18, SumMonoid(3942)) }, Fingerprint { range: Range(320, 501), fp: EncodedCountingMonoid(18, SumMonoid(7132)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 67), items: [21, 23], want_response: true }, ItemSet { range: Range(67, 120), items: [85], want_response: true }, ItemSet { range: Range(120, 320), items: [120, 165], want_response: true }, ItemSet { range: Range(320, 501), items: [449, 495], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 67), items: [31, 39, 40, 62], want_response: false }, ItemSet { range: Range(67, 120), items: [67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(120, 320), items: [133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309], want_response: false }, ItemSet { range: Range(320, 501), items: [320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 449, 495, 707, 727, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (449, true), (495, true), (707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 449, 495, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 449, 495, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(29, SumMonoid(15936)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 85), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(85, 501), fp: EncodedCountingMonoid(4, SumMonoid(819)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 62), fp: EncodedCountingMonoid(4, SumMonoid(117)) }, Fingerprint { range: Range(62, 85), fp: EncodedCountingMonoid(3, SumMonoid(212)) }, Fingerprint { range: Range(85, 309), fp: EncodedCountingMonoid(20, SumMonoid(3932)) }, Fingerprint { range: Range(309, 501), fp: EncodedCountingMonoid(19, SumMonoid(7441)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 62), items: [21, 23], want_response: true }, ItemSet { range: Range(62, 85), items: [], want_response: true }, ItemSet { range: Range(85, 165), items: [85, 120], want_response: true }, ItemSet { range: Range(165, 309), items: [165], want_response: true }, ItemSet { range: Range(309, 501), items: [449], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 62), items: [31, 39, 40], want_response: false }, ItemSet { range: Range(62, 85), items: [62, 67, 83], want_response: false }, ItemSet { range: Range(85, 165), items: [87, 103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 309), items: [188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 501), items: [309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 449, 707, 727, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (449, true), (707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 449, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(28, SumMonoid(15098)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 85), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(85, 501), fp: EncodedCountingMonoid(4, SumMonoid(819)) }, Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(10, SumMonoid(5904)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(10, SumMonoid(8308)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 62), fp: EncodedCountingMonoid(4, SumMonoid(117)) }, Fingerprint { range: Range(62, 85), fp: EncodedCountingMonoid(3, SumMonoid(212)) }, Fingerprint { range: Range(85, 309), fp: EncodedCountingMonoid(20, SumMonoid(3932)) }, Fingerprint { range: Range(309, 501), fp: EncodedCountingMonoid(19, SumMonoid(7441)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 832), fp: EncodedCountingMonoid(5, SumMonoid(3828)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(4, SumMonoid(3488)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 62), items: [21, 23], want_response: true }, ItemSet { range: Range(62, 85), items: [], want_response: true }, ItemSet { range: Range(85, 165), items: [85, 120], want_response: true }, ItemSet { range: Range(165, 309), items: [165], want_response: true }, ItemSet { range: Range(309, 501), items: [449], want_response: true }, ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 62), items: [31, 39, 40], want_response: false }, ItemSet { range: Range(62, 85), items: [62, 67, 83], want_response: false }, ItemSet { range: Range(85, 165), items: [87, 103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 309), items: [188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 501), items: [309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 449, 657, 661, 682, 707, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(795, 832), items: [803, 827], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 883, 884, 889], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 740), items: [727, 731], want_response: true }, ItemSet { range: Range(740, 795), items: [740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 795, 830, 837, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (449, true), (657, true), (661, true), (682, true), (707, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 740), items: [], want_response: false }, ItemSet { range: Range(740, 795), items: [743, 746, 755], want_response: false }], wants: [803, 827, 832, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (795, true), (830, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(803, true), (827, true), (832, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 795, 830, 837, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 449, 657, 661, 682, 707, 992, 803, 827, 832, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 731, 740]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 449, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 449, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 7, 17, 21, 23, 31, 39, 40, 62, 67, 83, 85, 87, 103, 109, 120, 133, 142, 148, 159, 161, 163, 165, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 449, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 731, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 120, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(29, SumMonoid(15936)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 85), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(85, 501), fp: EncodedCountingMonoid(4, SumMonoid(819)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 62), fp: EncodedCountingMonoid(4, SumMonoid(117)) }, Fingerprint { range: Range(62, 85), fp: EncodedCountingMonoid(3, SumMonoid(212)) }, Fingerprint { range: Range(85, 309), fp: EncodedCountingMonoid(20, SumMonoid(3932)) }, Fingerprint { range: Range(309, 501), fp: EncodedCountingMonoid(19, SumMonoid(7441)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 62), items: [21, 23], want_response: true }, ItemSet { range: Range(62, 85), items: [], want_response: true }, ItemSet { range: Range(85, 165), items: [85, 120], want_response: true }, ItemSet { range: Range(165, 309), items: [165], want_response: true }, ItemSet { range: Range(309, 501), items: [449], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 62), items: [31, 39, 40], want_response: false }, ItemSet { range: Range(62, 85), items: [62, 67, 83], want_response: false }, ItemSet { range: Range(85, 165), items: [87, 103, 109, 133, 142, 148, 159, 161, 163], want_response: false }, ItemSet { range: Range(165, 309), items: [188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 501), items: [309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 120, 165, 449, 707, 727, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (120, true), (165, true), (449, true), (707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 120, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 120, 165, 449, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 21, 23, 85, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(28, SumMonoid(15816)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 85), fp: EncodedCountingMonoid(4, SumMonoid(67)) }, Fingerprint { range: Range(85, 501), fp: EncodedCountingMonoid(3, SumMonoid(699)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 62), fp: EncodedCountingMonoid(4, SumMonoid(117)) }, Fingerprint { range: Range(62, 85), fp: EncodedCountingMonoid(3, SumMonoid(212)) }, Fingerprint { range: Range(85, 309), fp: EncodedCountingMonoid(20, SumMonoid(3932)) }, Fingerprint { range: Range(309, 501), fp: EncodedCountingMonoid(19, SumMonoid(7441)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(6, 21), items: [6, 17], want_response: true }, ItemSet { range: Range(21, 62), items: [21, 23], want_response: true }, ItemSet { range: Range(62, 85), items: [], want_response: true }, ItemSet { range: Range(85, 309), items: [85, 165], want_response: true }, ItemSet { range: Range(309, 501), items: [449], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(6, 21), items: [7], want_response: false }, ItemSet { range: Range(21, 62), items: [31, 39, 40], want_response: false }, ItemSet { range: Range(62, 85), items: [62, 67, 83], want_response: false }, ItemSet { range: Range(85, 309), items: [87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 501), items: [309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [6, 17, 21, 23, 85, 165, 449, 707, 727, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(6, true), (17, true), (21, true), (23, true), (85, true), (165, true), (449, true), (707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 21, 23, 85, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 21, 23, 85, 165, 449, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 21, 23, 85, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(27, SumMonoid(15810)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 85), fp: EncodedCountingMonoid(3, SumMonoid(61)) }, Fingerprint { range: Range(85, 501), fp: EncodedCountingMonoid(3, SumMonoid(699)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 62), fp: EncodedCountingMonoid(3, SumMonoid(110)) }, Fingerprint { range: Range(62, 85), fp: EncodedCountingMonoid(3, SumMonoid(212)) }, Fingerprint { range: Range(85, 309), fp: EncodedCountingMonoid(20, SumMonoid(3932)) }, Fingerprint { range: Range(309, 501), fp: EncodedCountingMonoid(19, SumMonoid(7441)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [], wants: [], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(17, 23), items: [17, 21], want_response: true }, ItemSet { range: Range(23, 62), items: [23], want_response: true }, ItemSet { range: Range(62, 85), items: [], want_response: true }, ItemSet { range: Range(85, 309), items: [85, 165], want_response: true }, ItemSet { range: Range(309, 501), items: [449], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(17, 23), items: [], want_response: false }, ItemSet { range: Range(23, 62), items: [31, 39, 40], want_response: false }, ItemSet { range: Range(62, 85), items: [62, 67, 83], want_response: false }, ItemSet { range: Range(85, 309), items: [87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301], want_response: false }, ItemSet { range: Range(309, 501), items: [309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [17, 21, 23, 85, 165, 449, 707, 727, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(17, true), (21, true), (23, true), (85, true), (165, true), (449, true), (707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 21, 23, 85, 165, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 21, 23, 85, 165, 449, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 21, 23, 85, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(26, SumMonoid(15645)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 85), fp: EncodedCountingMonoid(3, SumMonoid(61)) }, Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [ItemSet { range: Range(85, 501), items: [85, 449], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 62), fp: EncodedCountingMonoid(3, SumMonoid(110)) }, Fingerprint { range: Range(62, 85), fp: EncodedCountingMonoid(3, SumMonoid(212)) }, Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(85, 501), items: [87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [85, 449], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(17, 23), items: [17, 21], want_response: true }, ItemSet { range: Range(23, 62), items: [23], want_response: true }, ItemSet { range: Range(62, 85), items: [], want_response: true }, ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(85, true), (449, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(17, 23), items: [], want_response: false }, ItemSet { range: Range(23, 62), items: [31, 39, 40], want_response: false }, ItemSet { range: Range(62, 85), items: [62, 67, 83], want_response: false }, ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [17, 21, 23, 707, 727, 992], provide: [(87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(17, true), (21, true), (23, true), (707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 21, 23, 85, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 31, 39, 40, 62, 67, 83, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [85, 449, 17, 21, 23, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 23, 85, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(25, SumMonoid(15624)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [ItemSet { range: Range(17, 85), items: [17, 23], want_response: true }, ItemSet { range: Range(85, 501), items: [85, 449], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 85), items: [31, 39, 40, 62, 67, 83], want_response: false }, ItemSet { range: Range(85, 501), items: [87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 23, 85, 449], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (23, true), (85, true), (449, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [707, 727, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 23, 85, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 23, 85, 449, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 85, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(24, SumMonoid(15601)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [ItemSet { range: Range(17, 449), items: [17, 85], want_response: true }, ItemSet { range: Range(449, 501), items: [449], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 449), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(449, 501), items: [452, 463, 469, 481, 496], want_response: false }], wants: [17, 85, 449], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (85, true), (449, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [707, 727, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 85, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 85, 449, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(23, SumMonoid(15516)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 731), fp: EncodedCountingMonoid(11, SumMonoid(6631)) }, Fingerprint { range: Range(731, 993), fp: EncodedCountingMonoid(10, SumMonoid(8419)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17, 449], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 731), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(731, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 449], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(615, 707), fp: EncodedCountingMonoid(3, SumMonoid(2000)) }, Fingerprint { range: Range(731, 838), fp: EncodedCountingMonoid(5, SumMonoid(3933)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(707, 731), items: [707, 727], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (449, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(615, 676), fp: EncodedCountingMonoid(7, SumMonoid(4551)) }, Fingerprint { range: Range(676, 707), fp: EncodedCountingMonoid(6, SumMonoid(4122)) }, Fingerprint { range: Range(731, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(707, 731), items: [712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [707, 727, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(615, 676), items: [657, 661], want_response: true }, ItemSet { range: Range(676, 707), items: [682], want_response: true }, ItemSet { range: Range(731, 795), items: [731, 740], want_response: true }], wants: [712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(707, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 676), items: [615, 642, 650, 654, 655, 667, 668], want_response: false }, ItemSet { range: Range(676, 707), items: [676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(731, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740], provide: [(712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (731, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 731, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 449, 707, 727, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 657, 661, 682, 731, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(22, SumMonoid(14785)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(10, SumMonoid(5904)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(10, SumMonoid(8415)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17, 449], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 449], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(5, SumMonoid(3929)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (449, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 707, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727, 740], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (707, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 449, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 449, 657, 661, 682, 707, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(21, SumMonoid(14336)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(10, SumMonoid(5904)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(10, SumMonoid(8415)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(5, SumMonoid(3929)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 707, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727, 740], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (707, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 657, 661, 682, 707, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(504, 993), fp: EncodedCountingMonoid(20, SumMonoid(14319)) }], item_sets: [ItemSet { range: Range(993, 504), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(504, 681), fp: EncodedCountingMonoid(22, SumMonoid(13127)) }, Fingerprint { range: Range(681, 993), fp: EncodedCountingMonoid(21, SumMonoid(17424)) }], item_sets: [ItemSet { range: Range(993, 504), items: [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(504, 530), fp: EncodedCountingMonoid(4, SumMonoid(2063)) }, Fingerprint { range: Range(530, 681), fp: EncodedCountingMonoid(4, SumMonoid(2452)) }, Fingerprint { range: Range(681, 832), fp: EncodedCountingMonoid(6, SumMonoid(4486)) }, Fingerprint { range: Range(832, 993), fp: EncodedCountingMonoid(6, SumMonoid(5318)) }], item_sets: [], wants: [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(530, 615), fp: EncodedCountingMonoid(9, SumMonoid(5130)) }, Fingerprint { range: Range(615, 681), fp: EncodedCountingMonoid(9, SumMonoid(5907)) }, Fingerprint { range: Range(681, 743), fp: EncodedCountingMonoid(5, SumMonoid(3478)) }, Fingerprint { range: Range(743, 832), fp: EncodedCountingMonoid(5, SumMonoid(3869)) }, Fingerprint { range: Range(832, 932), fp: EncodedCountingMonoid(6, SumMonoid(5319)) }, Fingerprint { range: Range(932, 993), fp: EncodedCountingMonoid(5, SumMonoid(4758)) }], item_sets: [ItemSet { range: Range(504, 523), items: [519, 522], want_response: true }, ItemSet { range: Range(523, 530), items: [523, 526], want_response: true }], wants: [], provide: [(993, true), (7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true), (501, true), (502, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(832, 884), fp: EncodedCountingMonoid(3, SumMonoid(2553)) }], item_sets: [ItemSet { range: Range(504, 523), items: [504, 515, 516], want_response: false }, ItemSet { range: Range(523, 530), items: [528], want_response: false }, ItemSet { range: Range(530, 615), items: [530, 604], want_response: true }, ItemSet { range: Range(615, 681), items: [657, 661], want_response: true }, ItemSet { range: Range(681, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(727, 743), items: [727, 740], want_response: true }, ItemSet { range: Range(743, 832), items: [803, 827], want_response: true }, ItemSet { range: Range(884, 932), items: [884, 889], want_response: true }, ItemSet { range: Range(932, 993), items: [992], want_response: true }], wants: [519, 522, 523, 526], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(530, 615), items: [539, 547, 548, 562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(615, 681), items: [615, 642, 650, 654, 655, 667, 668, 676, 680], want_response: false }, ItemSet { range: Range(681, 727), items: [681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(727, 743), items: [], want_response: false }, ItemSet { range: Range(743, 832), items: [743, 746, 755, 795, 830], want_response: false }, ItemSet { range: Range(884, 932), items: [894, 899, 916, 923], want_response: false }, ItemSet { range: Range(932, 993), items: [932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(832, 884), items: [837, 850], want_response: true }], wants: [504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 884, 889, 992], provide: [(519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(832, 884), items: [832, 838, 883], want_response: false }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 894, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850], provide: [(504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (657, true), (661, true), (682, true), (707, true), (727, true), (740, true), (803, true), (827, true), (884, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [832, 838, 883], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(832, true), (838, true), (883, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 894, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 884, 889, 992, 832, 838, 883]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(21, SumMonoid(14336)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(10, SumMonoid(5904)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(10, SumMonoid(8415)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(5, SumMonoid(3929)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 707, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727, 740], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (707, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 657, 661, 682, 707, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 890), fp: EncodedCountingMonoid(20, SumMonoid(13344)) }], item_sets: [ItemSet { range: Range(890, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 463), fp: EncodedCountingMonoid(41, SumMonoid(9786)) }, Fingerprint { range: Range(463, 890), fp: EncodedCountingMonoid(40, SumMonoid(25073)) }], item_sets: [ItemSet { range: Range(890, 17), items: [894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 727), fp: EncodedCountingMonoid(10, SumMonoid(5904)) }, Fingerprint { range: Range(727, 890), fp: EncodedCountingMonoid(9, SumMonoid(7423)) }], item_sets: [ItemSet { range: Range(17, 463), items: [17], want_response: true }], wants: [894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 598), fp: EncodedCountingMonoid(17, SumMonoid(8935)) }, Fingerprint { range: Range(598, 727), fp: EncodedCountingMonoid(16, SumMonoid(10582)) }, Fingerprint { range: Range(727, 830), fp: EncodedCountingMonoid(4, SumMonoid(3039)) }, Fingerprint { range: Range(830, 890), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(17, 463), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452], want_response: false }], wants: [17], provide: [(894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(3, SumMonoid(1922)) }, Fingerprint { range: Range(830, 884), fp: EncodedCountingMonoid(3, SumMonoid(2553)) }], item_sets: [ItemSet { range: Range(528, 598), items: [528, 530], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(727, 803), items: [727, 740], want_response: true }, ItemSet { range: Range(803, 830), items: [803, 827], want_response: true }, ItemSet { range: Range(884, 890), items: [884, 889], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452], provide: [(17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 502), fp: EncodedCountingMonoid(5, SumMonoid(2410)) }, Fingerprint { range: Range(502, 528), fp: EncodedCountingMonoid(5, SumMonoid(2592)) }, Fingerprint { range: Range(598, 655), fp: EncodedCountingMonoid(6, SumMonoid(3758)) }, Fingerprint { range: Range(655, 682), fp: EncodedCountingMonoid(6, SumMonoid(4027)) }], item_sets: [ItemSet { range: Range(528, 598), items: [539, 547, 548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(727, 803), items: [743, 746, 755, 795], want_response: false }, ItemSet { range: Range(803, 830), items: [], want_response: false }, ItemSet { range: Range(884, 890), items: [], want_response: false }, ItemSet { range: Range(830, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 884), items: [850], want_response: true }], wants: [528, 530, 682, 707, 727, 740, 803, 827, 884, 889], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(830, 850), items: [832, 838], want_response: false }, ItemSet { range: Range(850, 884), items: [883], want_response: false }, ItemSet { range: Range(463, 502), items: [], want_response: true }, ItemSet { range: Range(502, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 528), items: [516], want_response: true }, ItemSet { range: Range(598, 655), items: [604], want_response: true }, ItemSet { range: Range(655, 682), items: [657, 661], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850], provide: [(528, true), (530, true), (682, true), (707, true), (727, true), (740, true), (803, true), (827, true), (884, true), (889, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(463, 502), items: [463, 469, 481, 496, 501], want_response: false }, ItemSet { range: Range(502, 516), items: [502], want_response: false }, ItemSet { range: Range(516, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(598, 655), items: [598, 599, 615, 642, 650, 654], want_response: false }, ItemSet { range: Range(655, 682), items: [655, 667, 668, 676, 680, 681], want_response: false }], wants: [832, 838, 883, 504, 515, 516, 604, 657, 661], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], provide: [(832, true), (838, true), (883, true), (504, true), (515, true), (516, true), (604, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(463, true), (469, true), (481, true), (496, true), (501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889} + [894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 528, 530, 682, 707, 727, 740, 803, 827, 884, 889, 832, 838, 883, 504, 515, 516, 604, 657, 661]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 707, 712, 727, 740, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(21, SumMonoid(14336)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(10, SumMonoid(5904)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(10, SumMonoid(8415)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(5, SumMonoid(3929)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 707, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727, 740], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (707, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (740, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 740, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 657, 661, 682, 707, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 740]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(20, SumMonoid(13596)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(10, SumMonoid(5904)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682, 707], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 707, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (707, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 707, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 657, 661, 682, 707, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 354, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(20, SumMonoid(13243)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17, 354], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 354], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (354, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 354, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 354, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 177, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(20, SumMonoid(13066)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17, 177], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 177], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (177, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 177, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 177, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 89, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(20, SumMonoid(12978)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17, 89], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 89], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (89, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 89, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 89, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 45, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(20, SumMonoid(12934)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17, 45], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 45], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (45, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 45, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 45, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 23, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 993), fp: EncodedCountingMonoid(20, SumMonoid(12912)) }], item_sets: [ItemSet { range: Range(993, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 17), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(17, 501), items: [17, 23], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [17, 23], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(17, true), (23, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 23, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [17, 23, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(20, SumMonoid(12901)) }], item_sets: [ItemSet { range: Range(993, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 501), fp: EncodedCountingMonoid(45, SumMonoid(11695)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 12), items: [993, 7], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(12, 501), items: [12, 17], want_response: true }], wants: [993, 7], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(12, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [12, 17], provide: [(993, true), (7, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(12, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [12, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 993), fp: EncodedCountingMonoid(20, SumMonoid(12895)) }], item_sets: [ItemSet { range: Range(993, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 6), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(6, 501), items: [6, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(6, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [6, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(6, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [6, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 993), fp: EncodedCountingMonoid(20, SumMonoid(12892)) }], item_sets: [ItemSet { range: Range(993, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 3), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(3, 501), items: [3, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(3, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [3, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(3, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [3, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 993), fp: EncodedCountingMonoid(20, SumMonoid(12891)) }], 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, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 2), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(2, 501), items: [2, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(2, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [2, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(2, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [2, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12890)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 416, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12474)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6843)) }], item_sets: [ItemSet { range: Range(1, 416), items: [1, 17], want_response: true }, ItemSet { range: Range(416, 501), items: [416], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 416), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408], want_response: false }, ItemSet { range: Range(416, 501), items: [426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 416], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 883), fp: EncodedCountingMonoid(4, SumMonoid(3195)) }, Fingerprint { range: Range(883, 899), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (416, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 830), fp: EncodedCountingMonoid(4, SumMonoid(3039)) }, Fingerprint { range: Range(830, 883), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(883, 899), items: [894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(883, 899), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 827), items: [727, 803], want_response: true }, ItemSet { range: Range(827, 830), items: [827], want_response: true }, ItemSet { range: Range(830, 883), items: [838], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 827), items: [743, 746, 755, 795], want_response: false }, ItemSet { range: Range(827, 830), items: [], want_response: false }, ItemSet { range: Range(830, 883), items: [830, 837, 850], want_response: false }], wants: [883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 827, 838], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837, 850], provide: [(883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (803, true), (827, true), (838, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 416, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837, 850]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 416, 657, 661, 682, 992, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 827, 838]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 416, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 416, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 416, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 624, 657, 661, 682, 727, 803, 827, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12682)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(9, SumMonoid(5139)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(9, SumMonoid(7525)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(682, 827), fp: EncodedCountingMonoid(3, SumMonoid(2212)) }], item_sets: [ItemSet { range: Range(528, 598), items: [528, 530], want_response: true }, ItemSet { range: Range(598, 657), items: [604, 624], want_response: true }, ItemSet { range: Range(657, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(827, 850), items: [827, 838], want_response: true }, ItemSet { range: Range(850, 889), items: [883, 884], want_response: true }, ItemSet { range: Range(889, 993), items: [889, 992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(682, 743), fp: EncodedCountingMonoid(4, SumMonoid(2797)) }, Fingerprint { range: Range(743, 827), fp: EncodedCountingMonoid(4, SumMonoid(3039)) }], item_sets: [ItemSet { range: Range(528, 598), items: [539, 547, 548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(598, 657), items: [598, 599, 615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(657, 682), items: [667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(827, 850), items: [830, 837], want_response: false }, ItemSet { range: Range(850, 889), items: [850], want_response: false }, ItemSet { range: Range(889, 993), items: [894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }], wants: [528, 530, 604, 624, 657, 661, 827, 838, 883, 884, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(682, 743), items: [682, 727], want_response: true }, ItemSet { range: Range(743, 827), items: [803], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(528, true), (530, true), (604, true), (624, true), (657, true), (661, true), (827, true), (838, true), (883, true), (884, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(682, 743), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(743, 827), items: [743, 746, 755, 795], want_response: false }], wants: [504, 515, 516, 682, 727, 803], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 687, 693, 705, 712, 743, 746, 755, 795], provide: [(504, true), (515, true), (516, true), (682, true), (727, true), (803, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 624, 657, 661, 682, 727, 803, 827, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 501, 502, 519, 522, 523, 526, 687, 693, 705, 712, 743, 746, 755, 795]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 528, 530, 604, 624, 657, 661, 827, 838, 883, 884, 889, 992, 504, 515, 516, 682, 727, 803]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 624, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 624, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 624, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 728, 803, 827, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12786)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7571)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3085)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727, 728], want_response: true }, ItemSet { range: Range(795, 838), items: [803, 827], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 728, 803, 827], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (728, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 728, 803, 827, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 728, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 728, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 728, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 728, 743, 746, 755, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 780, 803, 827, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12838)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7623)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3137)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727, 780], want_response: true }, ItemSet { range: Range(795, 838), items: [803, 827], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 780, 803, 827], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (780, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 780, 803, 827, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 780, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 780, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 780, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 780, 795, 803, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 806, 827, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12864)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7649)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3163)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }, ItemSet { range: Range(795, 827), items: [803, 806], want_response: true }, ItemSet { range: Range(827, 838), items: [827], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 827), items: [795], want_response: false }, ItemSet { range: Range(827, 838), items: [830, 837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 806, 827], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (803, true), (806, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 806, 827, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 806, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 806, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 806, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 806, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 819, 827, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12877)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7662)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3176)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }, ItemSet { range: Range(795, 827), items: [803, 819], want_response: true }, ItemSet { range: Range(827, 838), items: [827], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 827), items: [795], want_response: false }, ItemSet { range: Range(827, 838), items: [830, 837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 819, 827], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (803, true), (819, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 819, 827, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 819, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 819, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 819, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 819, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 826, 827, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12884)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7669)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3183)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }, ItemSet { range: Range(795, 827), items: [803, 826], want_response: true }, ItemSet { range: Range(827, 838), items: [827], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 827), items: [795], want_response: false }, ItemSet { range: Range(827, 838), items: [830, 837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 826, 827], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (803, true), (826, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 826, 827, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 826, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 826, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 826, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 826, 827, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 829, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12887)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7672)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3186)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }, ItemSet { range: Range(795, 829), items: [803, 827], want_response: true }, ItemSet { range: Range(829, 838), items: [829], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 829), items: [795], want_response: false }, ItemSet { range: Range(829, 838), items: [830, 837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 827, 829], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (803, true), (827, true), (829, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 829, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 827, 829]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 829, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 829, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 829, 830, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 831, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12889)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7674)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3188)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }, ItemSet { range: Range(795, 831), items: [803, 827], want_response: true }, ItemSet { range: Range(831, 838), items: [831], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }, ItemSet { range: Range(795, 831), items: [795, 830], want_response: false }, ItemSet { range: Range(831, 838), items: [837], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 827, 831], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true), (803, true), (827, true), (831, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 831, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727, 803, 827, 831]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 831, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 831, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 604, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 831, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12890)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5197)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1662)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [604], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (604, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 530, 604, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 604, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 302, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12588)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5320)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 302), items: [1, 17], want_response: true }, ItemSet { range: Range(302, 501), items: [302], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 302), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301], want_response: false }, ItemSet { range: Range(302, 501), items: [309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 302], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(528, 650), items: [528, 530], want_response: true }, ItemSet { range: Range(650, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 803), items: [682, 727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (302, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }], item_sets: [ItemSet { range: Range(528, 650), items: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], want_response: false }, ItemSet { range: Range(650, 682), items: [650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 803), items: [687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [528, 530, 657, 661, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(528, true), (530, true), (657, true), (661, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }], wants: [803, 827, 832, 838, 883, 884, 889, 504, 515, 516], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526], provide: [(803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 302, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 501, 502, 519, 522, 523, 526]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 302, 528, 530, 657, 661, 682, 727, 992, 803, 827, 832, 838, 883, 884, 889, 504, 515, 516]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 302, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 302, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 302, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 453, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12739)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5320)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 453), items: [1, 17], want_response: true }, ItemSet { range: Range(453, 501), items: [453], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 453), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452], want_response: false }, ItemSet { range: Range(453, 501), items: [463, 469, 481, 496], want_response: false }], wants: [1, 17, 453], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(528, 650), items: [528, 530], want_response: true }, ItemSet { range: Range(650, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 803), items: [682, 727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (453, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }], item_sets: [ItemSet { range: Range(528, 650), items: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], want_response: false }, ItemSet { range: Range(650, 682), items: [650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 803), items: [687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [528, 530, 657, 661, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(528, true), (530, true), (657, true), (661, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }], wants: [803, 827, 832, 838, 883, 884, 889, 504, 515, 516], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526], provide: [(803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 453, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 501, 502, 519, 522, 523, 526]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 453, 528, 530, 657, 661, 682, 727, 992, 803, 827, 832, 838, 883, 884, 889, 504, 515, 516]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 453, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 453, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 453, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 515, 516, 528, 529, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12815)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5122)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1587)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 530), items: [528, 529], want_response: true }, ItemSet { range: Range(530, 579), items: [530], want_response: true }, ItemSet { range: Range(579, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 530), items: [], want_response: false }, ItemSet { range: Range(530, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 529, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (529, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 515, 516, 528, 529, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 529, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 491, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12777)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5320)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 491), items: [1, 17], want_response: true }, ItemSet { range: Range(491, 501), items: [491], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 491), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(491, 501), items: [496], want_response: false }], wants: [1, 17, 491], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(528, 650), items: [528, 530], want_response: true }, ItemSet { range: Range(650, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 803), items: [682, 727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (491, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }], item_sets: [ItemSet { range: Range(528, 650), items: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], want_response: false }, ItemSet { range: Range(650, 682), items: [650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 803), items: [687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [528, 530, 657, 661, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(528, true), (530, true), (657, true), (661, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }], wants: [803, 827, 832, 838, 883, 884, 889, 504, 515, 516], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526], provide: [(803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 491, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 501, 502, 519, 522, 523, 526]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 491, 528, 530, 657, 661, 682, 727, 992, 803, 827, 832, 838, 883, 884, 889, 504, 515, 516]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 491, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 491, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 491, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 504, 510, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12796)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5103)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1529)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [504, 510, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 501, 502, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 510, 515, 838, 883, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (501, true), (502, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (510, true), (515, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 504, 510, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 501, 502, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 504, 510, 515, 838, 883, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12787)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5094)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1520)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 883, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 504, 515, 838, 883, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 496, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12782)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5320)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 496), items: [1, 17], want_response: true }, ItemSet { range: Range(496, 501), items: [496], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 496), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 501), items: [496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(528, 650), items: [528, 530], want_response: true }, ItemSet { range: Range(650, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 803), items: [682, 727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }], item_sets: [ItemSet { range: Range(528, 650), items: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], want_response: false }, ItemSet { range: Range(650, 682), items: [650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 803), items: [687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [528, 530, 657, 661, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(528, true), (530, true), (657, true), (661, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }], wants: [803, 827, 832, 838, 883, 884, 889, 504, 515, 516], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526], provide: [(803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 496, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 501, 502, 519, 522, 523, 526]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 528, 530, 657, 661, 682, 727, 992, 803, 827, 832, 838, 883, 884, 889, 504, 515, 516]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 499, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12785)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5320)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 499), items: [1, 17], want_response: true }, ItemSet { range: Range(499, 501), items: [499], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 499), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(499, 501), items: [], want_response: false }], wants: [1, 17, 499], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(528, 650), items: [528, 530], want_response: true }, ItemSet { range: Range(650, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 803), items: [682, 727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (499, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }], item_sets: [ItemSet { range: Range(528, 650), items: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], want_response: false }, ItemSet { range: Range(650, 682), items: [650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 803), items: [687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [528, 530, 657, 661, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(528, true), (530, true), (657, true), (661, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }], wants: [803, 827, 832, 838, 883, 884, 889, 504, 515, 516], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526], provide: [(803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 499, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 501, 502, 519, 522, 523, 526]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 499, 528, 530, 657, 661, 682, 727, 992, 803, 827, 832, 838, 883, 884, 889, 504, 515, 516]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 500, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12786)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5320)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 500), items: [1, 17], want_response: true }, ItemSet { range: Range(500, 501), items: [500], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 500), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(500, 501), items: [], want_response: false }], wants: [1, 17, 500], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(528, 650), items: [528, 530], want_response: true }, ItemSet { range: Range(650, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 803), items: [682, 727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (500, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }], item_sets: [ItemSet { range: Range(528, 650), items: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], want_response: false }, ItemSet { range: Range(650, 682), items: [650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 803), items: [687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [528, 530, 657, 661, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [504, 515], want_response: true }, ItemSet { range: Range(516, 522), items: [516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(528, true), (530, true), (657, true), (661, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502], want_response: false }, ItemSet { range: Range(516, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }], wants: [803, 827, 832, 838, 883, 884, 889, 504, 515, 516], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [501, 502, 519, 522, 523, 526], provide: [(803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(501, true), (502, true), (519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 500, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 501, 502, 519, 522, 523, 526]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 500, 528, 530, 657, 661, 682, 727, 992, 803, 827, 832, 838, 883, 884, 889, 504, 515, 516]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 500, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 500, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 500, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 661, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12787)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5094)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1520)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 682), items: [657, 661], want_response: true }, ItemSet { range: Range(682, 727), items: [682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 682), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 727), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 661, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894], provide: [(657, true), (661, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 883, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 504, 515, 516, 528, 530, 657, 661, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 661, 682, 992, 504, 515, 838, 883, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 331, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12457)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5160)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 331), items: [1, 17], want_response: true }, ItemSet { range: Range(331, 501), items: [331], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 331), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(331, 501), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 331], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1520)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(650, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(727, 803), items: [727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (331, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 727), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(727, 803), items: [743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [657, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 504, 515], want_response: false }, ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916], provide: [(657, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(504, true), (515, true), (803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 331, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 331, 657, 682, 727, 992, 504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 331, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 496, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12622)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5160)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 496), items: [1, 17], want_response: true }, ItemSet { range: Range(496, 501), items: [496], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 496), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 501), items: [496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1520)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(650, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(727, 803), items: [727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 727), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(727, 803), items: [743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [657, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 504, 515], want_response: false }, ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916], provide: [(657, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(504, true), (515, true), (803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 496, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 727, 992, 504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 504, 515, 516, 528, 530, 579, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12705)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(5012)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(4, SumMonoid(2036)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 504], want_response: true }, ItemSet { range: Range(515, 522), items: [515, 516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 579), items: [528, 530], want_response: true }, ItemSet { range: Range(579, 615), items: [579], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502], want_response: false }, ItemSet { range: Range(515, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 504, 515, 516, 528, 530, 579, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 504, 515, 516, 528, 530, 538, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12664)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4971)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 528), fp: EncodedCountingMonoid(4, SumMonoid(2036)) }, Fingerprint { range: Range(528, 615), fp: EncodedCountingMonoid(3, SumMonoid(1596)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 522), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }, Fingerprint { range: Range(522, 528), fp: EncodedCountingMonoid(3, SumMonoid(1571)) }, Fingerprint { range: Range(528, 579), fp: EncodedCountingMonoid(5, SumMonoid(2773)) }, Fingerprint { range: Range(579, 615), fp: EncodedCountingMonoid(4, SumMonoid(2357)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 504], want_response: true }, ItemSet { range: Range(515, 522), items: [515, 516], want_response: true }, ItemSet { range: Range(522, 528), items: [], want_response: true }, ItemSet { range: Range(528, 538), items: [528, 530], want_response: true }, ItemSet { range: Range(538, 579), items: [538], want_response: true }, ItemSet { range: Range(579, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502], want_response: false }, ItemSet { range: Range(515, 522), items: [519], want_response: false }, ItemSet { range: Range(522, 528), items: [522, 523, 526], want_response: false }, ItemSet { range: Range(528, 538), items: [], want_response: false }, ItemSet { range: Range(538, 579), items: [539, 547, 548, 562, 577], want_response: false }, ItemSet { range: Range(579, 615), items: [579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [838, 883, 884, 889, 504, 515, 516, 528, 530, 538, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(838, true), (883, true), (884, true), (889, true), (504, true), (515, true), (516, true), (528, true), (530, true), (538, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(502, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 504, 515, 516, 528, 530, 538, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 838, 883, 884, 889, 504, 515, 516, 528, 530, 538, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 504, 515, 516, 517, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12643)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4950)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 517), fp: EncodedCountingMonoid(4, SumMonoid(2036)) }, Fingerprint { range: Range(517, 615), fp: EncodedCountingMonoid(3, SumMonoid(1575)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(517, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 517), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 517), items: [501, 504, 515, 516], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(517, 530), items: [517, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(517, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 516, 838, 883, 884, 889, 517, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (516, true), (838, true), (883, true), (884, true), (889, true), (517, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 504, 515, 516, 517, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 516, 838, 883, 884, 889, 517, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 504, 507, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12633)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4940)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2027)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 504, 507, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 507, 515, 838, 883, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (507, true), (515, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 504, 507, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 502, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 507, 515, 838, 883, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12628)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 883, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 883, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 499, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12625)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5160)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 499), items: [1, 17], want_response: true }, ItemSet { range: Range(499, 501), items: [499], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 499), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(499, 501), items: [], want_response: false }], wants: [1, 17, 499], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1520)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(650, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(727, 803), items: [727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (499, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 727), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(727, 803), items: [743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [657, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 504, 515], want_response: false }, ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916], provide: [(657, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(504, true), (515, true), (803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 499, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 499, 657, 682, 727, 992, 504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(12126)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(9, SumMonoid(5160)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(8, SumMonoid(6948)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1520)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 883), fp: EncodedCountingMonoid(4, SumMonoid(3300)) }, Fingerprint { range: Range(883, 923), fp: EncodedCountingMonoid(3, SumMonoid(2656)) }], item_sets: [ItemSet { range: Range(650, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(727, 803), items: [727], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 727), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(727, 803), items: [743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 850), items: [830, 837], want_response: true }, ItemSet { range: Range(850, 883), items: [850], want_response: true }, ItemSet { range: Range(883, 916), items: [894, 899], want_response: true }, ItemSet { range: Range(916, 923), items: [916], want_response: true }], wants: [657, 682, 727, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 504, 515], want_response: false }, ItemSet { range: Range(803, 850), items: [803, 827, 832, 838], want_response: false }, ItemSet { range: Range(850, 883), items: [], want_response: false }, ItemSet { range: Range(883, 916), items: [883, 884, 889], want_response: false }, ItemSet { range: Range(916, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916], provide: [(657, true), (682, true), (727, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (502, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(504, true), (515, true), (803, true), (827, true), (832, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 502, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 727, 992, 504, 515, 803, 827, 832, 838, 883, 884, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 727, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 883, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12628)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(9, SumMonoid(7675)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 883, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 883, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (883, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 883, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 883, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 442, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(12187)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 442), items: [1, 17], want_response: true }, ItemSet { range: Range(442, 501), items: [442], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 442), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(442, 501), items: [452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 442], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (442, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 442, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 442, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 221, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11966)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 221), items: [1, 17], want_response: true }, ItemSet { range: Range(221, 501), items: [221], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 221), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216], want_response: false }, ItemSet { range: Range(221, 501), items: [225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 221], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (221, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 221, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 221, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 111, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11856)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 111), items: [1, 17], want_response: true }, ItemSet { range: Range(111, 501), items: [111], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 111), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(111, 501), items: [133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 111], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (111, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 111, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 111, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 56, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11801)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 56), items: [1, 17], want_response: true }, ItemSet { range: Range(56, 501), items: [56], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 56), items: [7, 31, 39, 40], want_response: false }, ItemSet { range: Range(56, 501), items: [62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 56], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (56, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 56, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 56, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 28, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11773)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 28), items: [1, 17], want_response: true }, ItemSet { range: Range(28, 501), items: [28], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 28), items: [7], want_response: false }, ItemSet { range: Range(28, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 28], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (28, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 28, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 28, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 14, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11759)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 14], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 14, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (14, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 14, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 14, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 7, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11752)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 7], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 7, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 4, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11749)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 4], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 4, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (4, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 4, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 4, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 2, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(20, SumMonoid(11747)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 2], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 2, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (2, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 2, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 2, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11745)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 727), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(727, 993), fp: EncodedCountingMonoid(8, SumMonoid(6792)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 727), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(727, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(727, 838), fp: EncodedCountingMonoid(4, SumMonoid(3189)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 727), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(727, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 727), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(727, 795), items: [727], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(727, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 727], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (727, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 727, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 727]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 364, 501, 502, 504, 515, 516, 528, 530, 657, 682, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11382)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(8, SumMonoid(4253)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(8, SumMonoid(6747)) }], item_sets: [ItemSet { range: Range(1, 364), items: [1, 17], want_response: true }, ItemSet { range: Range(364, 501), items: [364], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 364), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353], want_response: false }, ItemSet { range: Range(364, 501), items: [366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 364], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 598), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(682, 832), fp: EncodedCountingMonoid(3, SumMonoid(2312)) }], item_sets: [ItemSet { range: Range(598, 682), items: [657], want_response: true }, ItemSet { range: Range(832, 850), items: [832, 838], want_response: true }, ItemSet { range: Range(850, 992), items: [884, 889], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (364, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }, Fingerprint { range: Range(682, 746), fp: EncodedCountingMonoid(5, SumMonoid(3540)) }, Fingerprint { range: Range(746, 832), fp: EncodedCountingMonoid(4, SumMonoid(3126)) }], item_sets: [ItemSet { range: Range(598, 682), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(832, 850), items: [837], want_response: false }, ItemSet { range: Range(850, 992), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }], wants: [657, 832, 838, 884, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }, ItemSet { range: Range(682, 746), items: [682], want_response: true }, ItemSet { range: Range(746, 832), items: [803, 827], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(657, true), (832, true), (838, true), (884, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 746), items: [687, 693, 705, 712, 743], want_response: false }, ItemSet { range: Range(746, 832), items: [746, 755, 795, 830], want_response: false }], wants: [504, 515, 516, 528, 530, 682, 803, 827], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (837, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830], provide: [(504, true), (515, true), (516, true), (528, true), (530, true), (682, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 364, 501, 502, 504, 515, 516, 528, 530, 657, 682, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 364, 657, 832, 838, 884, 889, 992, 504, 515, 516, 528, 530, 682, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 364, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 364, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 364, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 546, 657, 682, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11564)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(9, SumMonoid(4799)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(8, SumMonoid(6747)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 598), fp: EncodedCountingMonoid(4, SumMonoid(2120)) }, Fingerprint { range: Range(682, 832), fp: EncodedCountingMonoid(3, SumMonoid(2312)) }], item_sets: [ItemSet { range: Range(598, 682), items: [657], want_response: true }, ItemSet { range: Range(832, 850), items: [832, 838], want_response: true }, ItemSet { range: Range(850, 992), items: [884, 889], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }, Fingerprint { range: Range(682, 746), fp: EncodedCountingMonoid(5, SumMonoid(3540)) }, Fingerprint { range: Range(746, 832), fp: EncodedCountingMonoid(4, SumMonoid(3126)) }], item_sets: [ItemSet { range: Range(598, 682), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(832, 850), items: [837], want_response: false }, ItemSet { range: Range(850, 992), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }], wants: [657, 832, 838, 884, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530, 546], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }, ItemSet { range: Range(682, 746), items: [682], want_response: true }, ItemSet { range: Range(746, 832), items: [803, 827], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(657, true), (832, true), (838, true), (884, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 746), items: [687, 693, 705, 712, 743], want_response: false }, ItemSet { range: Range(746, 832), items: [746, 755, 795, 830], want_response: false }], wants: [504, 515, 516, 528, 530, 546, 682, 803, 827], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (837, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830], provide: [(504, true), (515, true), (516, true), (528, true), (530, true), (546, true), (682, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 546, 657, 682, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 832, 838, 884, 889, 992, 504, 515, 516, 528, 530, 546, 682, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 546, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 546, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 546, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 637, 657, 682, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11655)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(9, SumMonoid(4890)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(8, SumMonoid(6747)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 598), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(682, 832), fp: EncodedCountingMonoid(3, SumMonoid(2312)) }], item_sets: [ItemSet { range: Range(598, 682), items: [637, 657], want_response: true }, ItemSet { range: Range(832, 850), items: [832, 838], want_response: true }, ItemSet { range: Range(850, 992), items: [884, 889], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }, Fingerprint { range: Range(682, 746), fp: EncodedCountingMonoid(5, SumMonoid(3540)) }, Fingerprint { range: Range(746, 832), fp: EncodedCountingMonoid(4, SumMonoid(3126)) }], item_sets: [ItemSet { range: Range(598, 682), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(832, 850), items: [837], want_response: false }, ItemSet { range: Range(850, 992), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }], wants: [637, 657, 832, 838, 884, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }, ItemSet { range: Range(682, 746), items: [682], want_response: true }, ItemSet { range: Range(746, 832), items: [803, 827], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(637, true), (657, true), (832, true), (838, true), (884, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 746), items: [687, 693, 705, 712, 743], want_response: false }, ItemSet { range: Range(746, 832), items: [746, 755, 795, 830], want_response: false }], wants: [504, 515, 516, 528, 530, 682, 803, 827], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (837, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830], provide: [(504, true), (515, true), (516, true), (528, true), (530, true), (682, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 637, 657, 682, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 637, 657, 832, 838, 884, 889, 992, 504, 515, 516, 528, 530, 682, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 637, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 637, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 637, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(11018)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(8, SumMonoid(4253)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(8, SumMonoid(6747)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 598), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(682, 832), fp: EncodedCountingMonoid(3, SumMonoid(2312)) }], item_sets: [ItemSet { range: Range(598, 682), items: [657], want_response: true }, ItemSet { range: Range(832, 850), items: [832, 838], want_response: true }, ItemSet { range: Range(850, 992), items: [884, 889], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }, Fingerprint { range: Range(682, 746), fp: EncodedCountingMonoid(5, SumMonoid(3540)) }, Fingerprint { range: Range(746, 832), fp: EncodedCountingMonoid(4, SumMonoid(3126)) }], item_sets: [ItemSet { range: Range(598, 682), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(832, 850), items: [837], want_response: false }, ItemSet { range: Range(850, 992), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }], wants: [657, 832, 838, 884, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }, ItemSet { range: Range(682, 746), items: [682], want_response: true }, ItemSet { range: Range(746, 832), items: [803, 827], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(657, true), (832, true), (838, true), (884, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 746), items: [687, 693, 705, 712, 743], want_response: false }, ItemSet { range: Range(746, 832), items: [746, 755, 795, 830], want_response: false }], wants: [504, 515, 516, 528, 530, 682, 803, 827], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (837, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830], provide: [(504, true), (515, true), (516, true), (528, true), (530, true), (682, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 832, 838, 884, 889, 992, 504, 515, 516, 528, 530, 682, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 705, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11723)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 705), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(705, 993), fp: EncodedCountingMonoid(8, SumMonoid(6770)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 705), fp: EncodedCountingMonoid(13, SumMonoid(8567)) }, Fingerprint { range: Range(705, 894), fp: EncodedCountingMonoid(9, SumMonoid(6973)) }, Fingerprint { range: Range(894, 993), fp: EncodedCountingMonoid(9, SumMonoid(8390)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(705, 838), fp: EncodedCountingMonoid(4, SumMonoid(3167)) }, Fingerprint { range: Range(838, 894), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(599, 705), items: [657, 682], want_response: true }, ItemSet { range: Range(894, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(705, 755), fp: EncodedCountingMonoid(4, SumMonoid(2906)) }, Fingerprint { range: Range(755, 838), fp: EncodedCountingMonoid(4, SumMonoid(3217)) }], item_sets: [ItemSet { range: Range(599, 705), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(894, 993), items: [894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 894), items: [850], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 894), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(705, 755), items: [705], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 894, 899, 916, 923, 932, 940, 945, 955, 986, 850], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(705, 755), items: [705, 712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 803, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (803, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 705, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 894, 899, 916, 923, 932, 940, 945, 955, 986, 850, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 803, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 884, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 716, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11734)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 716), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(716, 993), fp: EncodedCountingMonoid(8, SumMonoid(6781)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 615), fp: EncodedCountingMonoid(15, SumMonoid(8223)) }, Fingerprint { range: Range(615, 716), fp: EncodedCountingMonoid(14, SumMonoid(9385)) }, Fingerprint { range: Range(716, 899), fp: EncodedCountingMonoid(8, SumMonoid(6450)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 615), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(716, 838), fp: EncodedCountingMonoid(4, SumMonoid(3178)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(615, 716), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 562), fp: EncodedCountingMonoid(7, SumMonoid(3724)) }, Fingerprint { range: Range(562, 615), fp: EncodedCountingMonoid(6, SumMonoid(3496)) }, Fingerprint { range: Range(716, 795), fp: EncodedCountingMonoid(3, SumMonoid(2244)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(615, 716), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 562), items: [530], want_response: true }, ItemSet { range: Range(562, 615), items: [], want_response: true }, ItemSet { range: Range(716, 795), items: [716], want_response: true }], wants: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 562), items: [539, 547, 548], want_response: false }, ItemSet { range: Range(562, 615), items: [562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(716, 795), items: [743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 716], provide: [(615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 716, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 716]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 711, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11729)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 711), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(711, 993), fp: EncodedCountingMonoid(8, SumMonoid(6776)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 711), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(711, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(711, 838), fp: EncodedCountingMonoid(4, SumMonoid(3173)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(599, 711), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(711, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 711), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(711, 795), items: [711], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(711, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 711], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (711, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 711, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 711]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 708, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11726)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 708), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(708, 993), fp: EncodedCountingMonoid(8, SumMonoid(6773)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 708), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(708, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(708, 838), fp: EncodedCountingMonoid(4, SumMonoid(3170)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(599, 708), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(708, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 708), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(708, 795), items: [708], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(708, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 708], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (708, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 708, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 708]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 707, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11725)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 707), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(707, 993), fp: EncodedCountingMonoid(8, SumMonoid(6772)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 707), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(707, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(707, 838), fp: EncodedCountingMonoid(4, SumMonoid(3169)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(599, 707), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(707, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 707), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(707, 795), items: [707], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(707, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 707], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (707, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 707, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 707]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 884, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11724)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6771)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 884, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 884, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (884, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 884, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 884, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 442, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11282)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(8, SumMonoid(4253)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(8, SumMonoid(6569)) }], item_sets: [ItemSet { range: Range(1, 442), items: [1, 17], want_response: true }, ItemSet { range: Range(442, 501), items: [442], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 442), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(442, 501), items: [452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 442], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 598), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(682, 827), fp: EncodedCountingMonoid(3, SumMonoid(2191)) }, Fingerprint { range: Range(827, 850), fp: EncodedCountingMonoid(3, SumMonoid(2497)) }], item_sets: [ItemSet { range: Range(598, 682), items: [657], want_response: true }, ItemSet { range: Range(850, 993), items: [889, 992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (442, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }, Fingerprint { range: Range(682, 743), fp: EncodedCountingMonoid(4, SumMonoid(2797)) }, Fingerprint { range: Range(743, 827), fp: EncodedCountingMonoid(4, SumMonoid(3039)) }], item_sets: [ItemSet { range: Range(598, 682), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(850, 993), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(827, 850), items: [830, 837], want_response: true }], wants: [657, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(827, 850), items: [827, 832, 838], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }, ItemSet { range: Range(682, 743), items: [682, 706], want_response: true }, ItemSet { range: Range(743, 827), items: [803], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 830, 837], provide: [(657, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 743), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(743, 827), items: [743, 746, 755, 795], want_response: false }], wants: [504, 515, 827, 832, 838, 516, 528, 530, 682, 706, 803], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795], provide: [(504, true), (515, true), (827, true), (832, true), (838, true), (516, true), (528, true), (530, true), (682, true), (706, true), (803, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 442, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 830, 837, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 442, 657, 889, 992, 504, 515, 827, 832, 838, 516, 528, 530, 682, 706, 803]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 442, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 442, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 442, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 663, 682, 706, 803, 827, 832, 838, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11503)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(9, SumMonoid(4916)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(8, SumMonoid(6569)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 598), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(682, 827), fp: EncodedCountingMonoid(3, SumMonoid(2191)) }, Fingerprint { range: Range(827, 850), fp: EncodedCountingMonoid(3, SumMonoid(2497)) }], item_sets: [ItemSet { range: Range(598, 682), items: [657, 663], want_response: true }, ItemSet { range: Range(850, 993), items: [889, 992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }, Fingerprint { range: Range(682, 743), fp: EncodedCountingMonoid(4, SumMonoid(2797)) }, Fingerprint { range: Range(743, 827), fp: EncodedCountingMonoid(4, SumMonoid(3039)) }], item_sets: [ItemSet { range: Range(598, 682), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(850, 993), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(827, 850), items: [830, 837], want_response: true }], wants: [657, 663, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(827, 850), items: [827, 832, 838], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }, ItemSet { range: Range(682, 743), items: [682, 706], want_response: true }, ItemSet { range: Range(743, 827), items: [803], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 830, 837], provide: [(657, true), (663, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 743), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(743, 827), items: [743, 746, 755, 795], want_response: false }], wants: [504, 515, 827, 832, 838, 516, 528, 530, 682, 706, 803], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795], provide: [(504, true), (515, true), (827, true), (832, true), (838, true), (516, true), (528, true), (530, true), (682, true), (706, true), (803, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 663, 682, 706, 803, 827, 832, 838, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 830, 837, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 663, 889, 992, 504, 515, 827, 832, 838, 516, 528, 530, 682, 706, 803]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 663, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 663, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 663, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 774, 803, 827, 832, 838, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11614)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6661)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(4, SumMonoid(3110)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2559)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 889], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 827), items: [774, 803], want_response: true }, ItemSet { range: Range(827, 832), items: [827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 827), items: [755, 795], want_response: false }, ItemSet { range: Range(827, 832), items: [830], want_response: false }], wants: [504, 515, 832, 838, 889, 516, 528, 530, 706, 774, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(504, true), (515, true), (832, true), (838, true), (889, true), (516, true), (528, true), (530, true), (706, true), (774, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 774, 803, 827, 832, 838, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 832, 838, 889, 516, 528, 530, 706, 774, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 774, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 774, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 774, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 829, 832, 838, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11669)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6716)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(4, SumMonoid(3165)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2559)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 889], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 829), items: [803, 827], want_response: true }, ItemSet { range: Range(829, 832), items: [829], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 829), items: [755, 795], want_response: false }, ItemSet { range: Range(829, 832), items: [830], want_response: false }], wants: [504, 515, 832, 838, 889, 516, 528, 530, 706, 803, 827, 829], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(504, true), (515, true), (832, true), (838, true), (889, true), (516, true), (528, true), (530, true), (706, true), (803, true), (827, true), (829, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 829, 832, 838, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 832, 838, 889, 516, 528, 530, 706, 803, 827, 829]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 829, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 829, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 829, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 857, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11697)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6744)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2584)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 857, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 857, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (857, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 857, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 857, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 843, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11683)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6730)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2570)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 843, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 843, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (843, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 843, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 843, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 836, 838, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11676)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6723)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 836), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(836, 899), fp: EncodedCountingMonoid(3, SumMonoid(2563)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 836), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(836, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(836, 894), items: [836, 838, 889], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }, ItemSet { range: Range(832, 836), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }, ItemSet { range: Range(832, 836), items: [], want_response: false }], wants: [504, 515, 836, 838, 889, 516, 528, 530, 706, 803, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(504, true), (515, true), (836, true), (838, true), (889, true), (516, true), (528, true), (530, true), (706, true), (803, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 836, 838, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 836, 838, 889, 516, 528, 530, 706, 803, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 836, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 836, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 836, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 840, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11680)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6727)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2567)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 840, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 840, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (840, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 840, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 840, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10840)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 682), fp: EncodedCountingMonoid(8, SumMonoid(4253)) }, Fingerprint { range: Range(682, 993), fp: EncodedCountingMonoid(8, SumMonoid(6569)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 598), fp: EncodedCountingMonoid(13, SumMonoid(7026)) }, Fingerprint { range: Range(598, 682), fp: EncodedCountingMonoid(12, SumMonoid(7785)) }, Fingerprint { range: Range(682, 850), fp: EncodedCountingMonoid(10, SumMonoid(7503)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(10, SumMonoid(9240)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 598), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(682, 827), fp: EncodedCountingMonoid(3, SumMonoid(2191)) }, Fingerprint { range: Range(827, 850), fp: EncodedCountingMonoid(3, SumMonoid(2497)) }], item_sets: [ItemSet { range: Range(598, 682), items: [657], want_response: true }, ItemSet { range: Range(850, 993), items: [889, 992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }, Fingerprint { range: Range(682, 743), fp: EncodedCountingMonoid(4, SumMonoid(2797)) }, Fingerprint { range: Range(743, 827), fp: EncodedCountingMonoid(4, SumMonoid(3039)) }], item_sets: [ItemSet { range: Range(598, 682), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(850, 993), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(827, 850), items: [830, 837], want_response: true }], wants: [657, 889, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(827, 850), items: [827, 832, 838], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }, ItemSet { range: Range(682, 743), items: [682, 706], want_response: true }, ItemSet { range: Range(743, 827), items: [803], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 830, 837], provide: [(657, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }, ItemSet { range: Range(682, 743), items: [687, 693, 705, 712], want_response: false }, ItemSet { range: Range(743, 827), items: [743, 746, 755, 795], want_response: false }], wants: [504, 515, 827, 832, 838, 516, 528, 530, 682, 706, 803], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795], provide: [(504, true), (515, true), (827, true), (832, true), (838, true), (516, true), (528, true), (530, true), (682, true), (706, true), (803, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 830, 837, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 687, 693, 705, 712, 743, 746, 755, 795]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 889, 992, 504, 515, 827, 832, 838, 516, 528, 530, 682, 706, 803]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 504, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11679)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(9, SumMonoid(4935)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 504, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 252, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11427)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 252), items: [1, 17], want_response: true }, ItemSet { range: Range(252, 501), items: [252], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 252), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225], want_response: false }, ItemSet { range: Range(252, 501), items: [261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 252], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (252, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 252, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 252, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 126, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11301)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 126), items: [1, 17], want_response: true }, ItemSet { range: Range(126, 501), items: [126], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 126), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109], want_response: false }, ItemSet { range: Range(126, 501), items: [133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 126], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (126, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 126, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 126, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 63, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11238)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 63), items: [1, 17], want_response: true }, ItemSet { range: Range(63, 501), items: [63], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 63), items: [7, 31, 39, 40, 62], want_response: false }, ItemSet { range: Range(63, 501), items: [67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 63], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (63, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 63, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 63, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 32, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11207)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 32), items: [1, 17], want_response: true }, ItemSet { range: Range(32, 501), items: [32], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 32), items: [7, 31], want_response: false }, ItemSet { range: Range(32, 501), items: [39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 32], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (32, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 32, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 32, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 16, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11191)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 16], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 16, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (16, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 16, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 16, 17, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 8, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11183)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 8], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 8, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (8, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 8, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 8, 17, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 4, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11179)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 4], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 4, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (4, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 4, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 4, 17, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 2, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(19, SumMonoid(11177)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 17), items: [1, 2], want_response: true }, ItemSet { range: Range(17, 501), items: [17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 17), items: [7], want_response: false }, ItemSet { range: Range(17, 501), items: [31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 2, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (2, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 2, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 2, 17, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(11175)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4431)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657, 682], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 682, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (682, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 515, 516, 528, 530, 657, 682, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 682, 992, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 341, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10834)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4455)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 341), items: [1, 17], want_response: true }, ItemSet { range: Range(341, 501), items: [341], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 341), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(341, 501), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 341], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (341, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [515, 803, 827, 832, 838, 839, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(515, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 341, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 341, 657, 706, 992, 515, 803, 827, 832, 838, 839, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 341, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 341, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 341, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 512, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(11005)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4261)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2030)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 512, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [512, 515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(512, true), (515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 512, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 512, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 427, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10920)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4455)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 427), items: [1, 17], want_response: true }, ItemSet { range: Range(427, 501), items: [427], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 427), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(427, 501), items: [452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 427], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (427, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [515, 803, 827, 832, 838, 839, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(515, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 427, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 427, 657, 706, 992, 515, 803, 827, 832, 838, 839, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 427, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 427, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 427, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 470, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10963)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4455)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 470), items: [1, 17], want_response: true }, ItemSet { range: Range(470, 501), items: [470], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 470), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469], want_response: false }, ItemSet { range: Range(470, 501), items: [481, 496], want_response: false }], wants: [1, 17, 470], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (470, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [515, 803, 827, 832, 838, 839, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(515, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 470, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 470, 657, 706, 992, 515, 803, 827, 832, 838, 839, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 470, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 470, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 470, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 491, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10984)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4455)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 491), items: [1, 17], want_response: true }, ItemSet { range: Range(491, 501), items: [491], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 491), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(491, 501), items: [496], want_response: false }], wants: [1, 17, 491], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (491, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [515, 803, 827, 832, 838, 839, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(515, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 491, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 491, 657, 706, 992, 515, 803, 827, 832, 838, 839, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 491, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 491, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 491, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10493)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4455)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(516, 650), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 515], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 577), items: [530], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [515, 803, 827, 832, 838, 839, 889, 516, 528, 530], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(515, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 706, 992, 515, 803, 827, 832, 838, 839, 889, 516, 528, 530]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 515, 516, 519, 522, 523, 526, 528, 530, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 507, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(11000)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4256)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2025)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 507, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [507, 515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(507, true), (515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 507, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 507, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 505, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10998)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4254)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2023)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 505, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [505, 515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(505, true), (515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 505, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 505, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10997)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4253)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 504, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [504, 515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(504, true), (515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 504, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 504, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10996)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4252)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 516), fp: EncodedCountingMonoid(4, SumMonoid(2021)) }, Fingerprint { range: Range(516, 599), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(516, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 516), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 516), items: [501, 502, 503, 515], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(516, 530), items: [516, 528], want_response: true }, ItemSet { range: Range(530, 548), items: [530], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(516, 530), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(530, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 515, 838, 839, 889, 516, 528, 530, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (515, true), (838, true), (839, true), (889, true), (516, true), (528, true), (530, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 515, 516, 528, 530, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 503, 515, 838, 839, 889, 516, 528, 530, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 265, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10731)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4428)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 265), items: [1, 17], want_response: true }, ItemSet { range: Range(265, 501), items: [265], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 265), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261], want_response: false }, ItemSet { range: Range(265, 501), items: [271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 265], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(3, SumMonoid(1506)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (265, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 265, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 265, 657, 706, 992, 503, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 265, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 265, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 265, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 398, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10864)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4428)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 398), items: [1, 17], want_response: true }, ItemSet { range: Range(398, 501), items: [398], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 398), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388], want_response: false }, ItemSet { range: Range(398, 501), items: [401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 398], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(3, SumMonoid(1506)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (398, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 398, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 398, 657, 706, 992, 503, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 398, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 398, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 398, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 464, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10930)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4428)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 464), items: [1, 17], want_response: true }, ItemSet { range: Range(464, 501), items: [464], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 464), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463], want_response: false }, ItemSet { range: Range(464, 501), items: [469, 481, 496], want_response: false }], wants: [1, 17, 464], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(3, SumMonoid(1506)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (464, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 464, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 464, 657, 706, 992, 503, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 464, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 464, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 464, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 497, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10963)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4428)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 497), items: [1, 17], want_response: true }, ItemSet { range: Range(497, 501), items: [497], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 497), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(497, 501), items: [], want_response: false }], wants: [1, 17, 497], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(3, SumMonoid(1506)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (497, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 497, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 497, 657, 706, 992, 503, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 497, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 497, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 497, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 514, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10980)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4236)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2020)) }, Fingerprint { range: Range(515, 599), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 514], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 548), items: [528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 514, 838, 839, 889, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (514, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 514, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 503, 514, 838, 839, 889, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 506, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10972)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4228)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2012)) }, Fingerprint { range: Range(515, 599), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 506], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 548), items: [528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 506, 838, 839, 889, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (506, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 506, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 503, 506, 838, 839, 889, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10466)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4428)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(3, SumMonoid(1506)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 706, 992, 503, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10970)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4226)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(515, 599), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 548), items: [528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 503, 504, 838, 839, 889, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10466)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4428)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(3, SumMonoid(1506)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [657, 706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [657, 706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(657, true), (706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 706, 992, 503, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 657, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10970)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4226)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(515, 599), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [657], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [657, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 548), items: [528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(657, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 515, 516, 528, 657, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 657, 992, 503, 504, 838, 839, 889, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 329, 501, 502, 503, 504, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10642)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4275)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 329), items: [1, 17], want_response: true }, ItemSet { range: Range(329, 501), items: [329], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 329), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324], want_response: false }, ItemSet { range: Range(329, 501), items: [349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 329], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (329, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 329, 501, 502, 503, 504, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 329, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 329, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 329, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 329, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 493, 501, 502, 503, 504, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10806)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4275)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 493), items: [1, 17], want_response: true }, ItemSet { range: Range(493, 501), items: [493], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 493), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(493, 501), items: [496], want_response: false }], wants: [1, 17, 493], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 493, 501, 502, 503, 504, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 493, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 493, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 493, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 493, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 515, 516, 528, 575, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10888)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4144)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(515, 599), fp: EncodedCountingMonoid(4, SumMonoid(2134)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 548), items: [528], want_response: true }, ItemSet { range: Range(548, 599), items: [575], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 515, 516, 528, 575, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true), (575, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 515, 516, 528, 575, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 515, 516, 528, 575, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 515, 516, 528, 534, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10847)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4103)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(515, 599), fp: EncodedCountingMonoid(4, SumMonoid(2093)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 548), items: [528, 534], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 548), items: [539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 515, 516, 528, 534, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true), (534, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 515, 516, 528, 534, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 515, 516, 528, 534, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 514, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10827)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4083)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 514), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(514, 599), fp: EncodedCountingMonoid(4, SumMonoid(2073)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 514), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 514), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 548), items: [516, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 516), items: [], want_response: false }, ItemSet { range: Range(516, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 514, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (514, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 514, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 514, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10313)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4275)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 515), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(515, 650), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(515, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 515), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 515), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(515, 528), items: [515, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(515, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 515, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (515, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 515, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 515, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 509, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10822)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4078)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 509), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(509, 599), fp: EncodedCountingMonoid(4, SumMonoid(2068)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(509, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 509), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 509), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(509, 516), items: [509, 515], want_response: true }, ItemSet { range: Range(516, 548), items: [516, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(509, 516), items: [], want_response: false }, ItemSet { range: Range(516, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 509, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (509, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 509, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 509, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 507, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10820)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4076)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 507), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(507, 599), fp: EncodedCountingMonoid(4, SumMonoid(2066)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(507, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 507), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 507), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(507, 516), items: [507, 515], want_response: true }, ItemSet { range: Range(516, 548), items: [516, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(507, 516), items: [], want_response: false }, ItemSet { range: Range(516, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 507, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (507, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 507, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 507, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 506, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10819)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4075)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 506), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(506, 599), fp: EncodedCountingMonoid(4, SumMonoid(2065)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(506, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 506), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 506), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(506, 516), items: [506, 515], want_response: true }, ItemSet { range: Range(516, 548), items: [516, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(506, 516), items: [], want_response: false }, ItemSet { range: Range(516, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 506, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (506, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 506, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 506, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10818)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4074)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2064)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 516), items: [505, 515], want_response: true }, ItemSet { range: Range(516, 548), items: [516, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 516), items: [], want_response: false }, ItemSet { range: Range(516, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 515, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (515, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 515, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 515, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 258, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10561)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4265)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 258), items: [1, 17], want_response: true }, ItemSet { range: Range(258, 501), items: [258], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 258), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225], want_response: false }, ItemSet { range: Range(258, 501), items: [261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 258], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1549)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (258, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 258, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 258, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 258, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 258, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 258, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 387, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10690)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4265)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 387), items: [1, 17], want_response: true }, ItemSet { range: Range(387, 501), items: [387], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 387), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384], want_response: false }, ItemSet { range: Range(387, 501), items: [388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 387], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1549)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (387, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 387, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 387, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 387, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 387, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 387, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 451, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10754)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4265)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 451), items: [1, 17], want_response: true }, ItemSet { range: Range(451, 501), items: [451], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 451), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(451, 501), items: [452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 451], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1549)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (451, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 451, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 451, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 451, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 451, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 451, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 483, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10786)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4265)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 483), items: [1, 17], want_response: true }, ItemSet { range: Range(483, 501), items: [483], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 483), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(483, 501), items: [496], want_response: false }], wants: [1, 17, 483], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1549)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (483, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 483, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 483, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 483, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 483, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 483, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 499, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10802)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4265)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 499), items: [1, 17], want_response: true }, ItemSet { range: Range(499, 501), items: [499], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 499), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(499, 501), items: [], want_response: false }], wants: [1, 17, 499], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1549)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (499, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 499, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 499, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 499, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 507, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10810)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4066)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2056)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 516), items: [505, 507], want_response: true }, ItemSet { range: Range(516, 548), items: [516, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 516), items: [], want_response: false }, ItemSet { range: Range(516, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 507, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (507, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 507, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 507, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10303)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4265)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1549)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10303)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4265)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1549)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 516], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (516, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 516, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 516, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10809)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4065)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2055)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 516), items: [505, 506], want_response: true }, ItemSet { range: Range(516, 548), items: [516, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 516), items: [], want_response: false }, ItemSet { range: Range(516, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 516, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (516, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 516, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 516, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 258, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10551)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4255)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 258), items: [1, 17], want_response: true }, ItemSet { range: Range(258, 501), items: [258], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 258), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225], want_response: false }, ItemSet { range: Range(258, 501), items: [261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 258], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (258, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 506], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 258, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 258, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 258, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 258, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 258, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 387, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10680)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4255)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 387), items: [1, 17], want_response: true }, ItemSet { range: Range(387, 501), items: [387], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 387), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384], want_response: false }, ItemSet { range: Range(387, 501), items: [388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 387], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (387, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 506], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 387, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 387, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 387, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 387, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 387, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 452, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10745)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4255)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1, 17], want_response: true }, ItemSet { range: Range(452, 501), items: [452], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(452, 501), items: [452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 506], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 452, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 484, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10777)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4255)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 484), items: [1, 17], want_response: true }, ItemSet { range: Range(484, 501), items: [484], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 484), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(484, 501), items: [496], want_response: false }], wants: [1, 17, 484], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (484, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 506], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 484, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 484, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 484, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 484, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 484, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 500, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10793)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4255)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 500), items: [1, 17], want_response: true }, ItemSet { range: Range(500, 501), items: [500], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 500), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }, ItemSet { range: Range(500, 501), items: [], want_response: false }], wants: [1, 17, 500], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (500, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 506], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 500, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 500, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 500, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 500, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 500, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 508, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10801)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4057)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2047)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 508), items: [505, 506], want_response: true }, ItemSet { range: Range(508, 548), items: [508, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 508), items: [], want_response: false }, ItemSet { range: Range(508, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 508, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (508, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 508, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 508, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10293)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4255)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 506], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10293)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4255)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 528), items: [505, 506], want_response: true }, ItemSet { range: Range(528, 577), items: [528], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 528), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(528, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (528, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 528]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10800)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 402, 501, 502, 503, 504, 505, 506, 507, 528, 706, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10399)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(7, SumMonoid(5923)) }], item_sets: [ItemSet { range: Range(1, 402), items: [1, 17], want_response: true }, ItemSet { range: Range(402, 501), items: [402], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 402), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401], want_response: false }, ItemSet { range: Range(402, 501), items: [408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 402], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(3, SumMonoid(2365)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (402, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 838), items: [827, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 402, 501, 502, 503, 504, 505, 506, 507, 528, 706, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 402, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 402, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 402, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 402, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 603, 706, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10600)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 603), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(603, 993), fp: EncodedCountingMonoid(8, SumMonoid(6526)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 548), fp: EncodedCountingMonoid(8, SumMonoid(4179)) }, Fingerprint { range: Range(548, 603), fp: EncodedCountingMonoid(7, SumMonoid(4044)) }, Fingerprint { range: Range(603, 746), fp: EncodedCountingMonoid(15, SumMonoid(10128)) }, Fingerprint { range: Range(746, 993), fp: EncodedCountingMonoid(15, SumMonoid(13203)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(746, 839), fp: EncodedCountingMonoid(3, SumMonoid(2497)) }, Fingerprint { range: Range(839, 993), fp: EncodedCountingMonoid(3, SumMonoid(2720)) }], item_sets: [ItemSet { range: Range(548, 603), items: [], want_response: true }, ItemSet { range: Range(603, 746), items: [603, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 526), fp: EncodedCountingMonoid(3, SumMonoid(1564)) }, Fingerprint { range: Range(526, 548), fp: EncodedCountingMonoid(3, SumMonoid(1612)) }, Fingerprint { range: Range(746, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }, Fingerprint { range: Range(839, 932), fp: EncodedCountingMonoid(5, SumMonoid(4482)) }, Fingerprint { range: Range(932, 993), fp: EncodedCountingMonoid(5, SumMonoid(4758)) }], item_sets: [ItemSet { range: Range(548, 603), items: [548, 562, 577, 579, 581, 598, 599], want_response: false }, ItemSet { range: Range(603, 746), items: [615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(830, 839), items: [830, 837], want_response: true }], wants: [603, 706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(830, 839), items: [832, 838], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 526), items: [507], want_response: true }, ItemSet { range: Range(526, 548), items: [528], want_response: true }, ItemSet { range: Range(746, 830), items: [827], want_response: true }, ItemSet { range: Range(839, 932), items: [839, 889], want_response: true }, ItemSet { range: Range(932, 993), items: [992], want_response: true }], wants: [548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 830, 837], provide: [(603, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 548), items: [526, 539, 547], want_response: false }, ItemSet { range: Range(746, 830), items: [746, 755, 795], want_response: false }, ItemSet { range: Range(839, 932), items: [850, 894, 899, 916, 923], want_response: false }, ItemSet { range: Range(932, 993), items: [932, 940, 945, 955, 986], want_response: false }], wants: [503, 504, 832, 838, 505, 506, 507, 528, 827, 839, 889, 992], provide: [(548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 746, 755, 795, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(503, true), (504, true), (832, true), (838, true), (505, true), (506, true), (507, true), (528, true), (827, true), (839, true), (889, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (746, true), (755, true), (795, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 603, 706, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 830, 837, 519, 522, 523, 526, 539, 547, 746, 755, 795, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 603, 706, 503, 504, 832, 838, 505, 506, 507, 528, 827, 839, 889, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 603, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 603, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 603, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 703, 706, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10700)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 703), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(703, 993), fp: EncodedCountingMonoid(8, SumMonoid(6626)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 703), fp: EncodedCountingMonoid(13, SumMonoid(8567)) }, Fingerprint { range: Range(703, 894), fp: EncodedCountingMonoid(9, SumMonoid(6973)) }, Fingerprint { range: Range(894, 993), fp: EncodedCountingMonoid(9, SumMonoid(8390)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(703, 838), fp: EncodedCountingMonoid(4, SumMonoid(3068)) }, Fingerprint { range: Range(838, 894), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 703), items: [], want_response: true }, ItemSet { range: Range(894, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(703, 755), fp: EncodedCountingMonoid(4, SumMonoid(2906)) }, Fingerprint { range: Range(755, 838), fp: EncodedCountingMonoid(4, SumMonoid(3217)) }], item_sets: [ItemSet { range: Range(599, 703), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(894, 993), items: [894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 894), items: [850], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 894), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(703, 755), items: [703, 706], want_response: true }, ItemSet { range: Range(755, 838), items: [827, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 894, 899, 916, 923, 932, 940, 945, 955, 986, 850], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(703, 755), items: [705, 712, 743, 746], want_response: false }, ItemSet { range: Range(755, 838), items: [755, 795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 703, 706, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (703, true), (706, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 703, 706, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 894, 899, 916, 923, 932, 940, 945, 955, 986, 850, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 705, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 703, 706, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 703, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 703, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 703, 705, 706, 712, 743, 746, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 753, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10750)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6676)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3118)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706, 753], want_response: true }, ItemSet { range: Range(795, 838), items: [827, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 753, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true), (753, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 753, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 753, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 753, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 753, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 753, 755, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 778, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10775)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6701)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3143)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706, 778], want_response: true }, ItemSet { range: Range(795, 838), items: [827, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 778, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true), (778, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 778, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 778, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 778, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 778, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 778, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 791, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10788)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6714)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3156)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706, 791], want_response: true }, ItemSet { range: Range(795, 838), items: [827, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 791, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true), (791, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 791, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 791, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 791, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 791, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 791, 795, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 797, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10794)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6720)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3162)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [797, 827], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 797, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true), (797, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 797, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 797, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 797, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 797, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 797, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 800, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10797)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6723)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3165)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [800, 827], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 800, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true), (800, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 800, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 800, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 800, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 800, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 800, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 802, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10799)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6725)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3167)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [802, 827], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 802, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true), (802, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 802, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706, 802, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 802, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 802, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 528, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 802, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10800)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4056)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 528], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 528, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (528, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 528, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 528, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 264, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10536)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4234)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 264), items: [1, 17], want_response: true }, ItemSet { range: Range(264, 501), items: [264], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 264), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261], want_response: false }, ItemSet { range: Range(264, 501), items: [271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 264], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (264, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 577), items: [507], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 577), items: [519, 522, 523, 526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 264, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 264, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 264, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 264, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 264, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 396, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10668)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4234)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 396), items: [1, 17], want_response: true }, ItemSet { range: Range(396, 501), items: [396], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 396), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388], want_response: false }, ItemSet { range: Range(396, 501), items: [401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 396], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (396, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 577), items: [507], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 577), items: [519, 522, 523, 526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 396, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 396, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 396, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 396, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 396, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 462, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10734)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4234)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 462), items: [1, 17], want_response: true }, ItemSet { range: Range(462, 501), items: [462], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 462), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452], want_response: false }, ItemSet { range: Range(462, 501), items: [463, 469, 481, 496], want_response: false }], wants: [1, 17, 462], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (462, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 577), items: [507], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 577), items: [519, 522, 523, 526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 462, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 462, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 462, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 462, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 462, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 495, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10767)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4234)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 495), items: [1, 17], want_response: true }, ItemSet { range: Range(495, 501), items: [495], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 495), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481], want_response: false }, ItemSet { range: Range(495, 501), items: [496], want_response: false }], wants: [1, 17, 495], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 577), items: [507], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 577), items: [519, 522, 523, 526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 495, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 495, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 495, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 495, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 495, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 512, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10784)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4040)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2030)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 512], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 512, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (512, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 512, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 512, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10272)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4234)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 577), items: [507], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 577), items: [519, 522, 523, 526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10780)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10272)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4234)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 577), items: [507], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 577), items: [519, 522, 523, 526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10272)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 803), fp: EncodedCountingMonoid(8, SumMonoid(4234)) }, Fingerprint { range: Range(803, 993), fp: EncodedCountingMonoid(7, SumMonoid(6020)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 650), fp: EncodedCountingMonoid(17, SumMonoid(9480)) }, Fingerprint { range: Range(650, 803), fp: EncodedCountingMonoid(16, SumMonoid(11167)) }, Fingerprint { range: Range(803, 923), fp: EncodedCountingMonoid(6, SumMonoid(5226)) }, Fingerprint { range: Range(923, 993), fp: EncodedCountingMonoid(6, SumMonoid(5681)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 650), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(803, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 923), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(650, 803), items: [706], want_response: true }, ItemSet { range: Range(923, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(8, SumMonoid(4286)) }, Fingerprint { range: Range(577, 650), fp: EncodedCountingMonoid(7, SumMonoid(4191)) }], item_sets: [ItemSet { range: Range(650, 803), items: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(923, 993), items: [923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(803, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }, ItemSet { range: Range(899, 923), items: [899, 916], want_response: true }], wants: [706, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(803, 838), items: [803, 827, 832], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(899, 923), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 577), items: [507], want_response: true }, ItemSet { range: Range(577, 650), items: [], want_response: true }], wants: [650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916], provide: [(706, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 577), items: [519, 522, 523, 526, 539, 547, 548, 562], want_response: false }, ItemSet { range: Range(577, 650), items: [577, 579, 581, 598, 599, 615, 642], want_response: false }], wants: [503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507], provide: [(650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 923, 932, 940, 945, 955, 986, 830, 837, 850, 894, 899, 916, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 992, 503, 504, 803, 827, 832, 838, 839, 889, 505, 506, 507]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 889, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 889, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10780)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6726)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 889], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 889, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (889, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 889, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 889, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 445, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10336)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(7, SumMonoid(5837)) }], item_sets: [ItemSet { range: Range(1, 445), items: [1, 17], want_response: true }, ItemSet { range: Range(445, 501), items: [445], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 445), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }, ItemSet { range: Range(445, 501), items: [452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 445], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(3, SumMonoid(2336)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2509)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (445, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 839], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }], wants: [503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (838, true), (839, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 445, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 445, 992, 503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 445, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 445, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 445, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 667, 706, 803, 827, 832, 838, 839, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10558)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 667), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(667, 993), fp: EncodedCountingMonoid(8, SumMonoid(6504)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 577), fp: EncodedCountingMonoid(10, SumMonoid(5289)) }, Fingerprint { range: Range(577, 667), fp: EncodedCountingMonoid(10, SumMonoid(6150)) }, Fingerprint { range: Range(667, 830), fp: EncodedCountingMonoid(13, SumMonoid(9208)) }, Fingerprint { range: Range(830, 993), fp: EncodedCountingMonoid(12, SumMonoid(10907)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }], item_sets: [ItemSet { range: Range(577, 667), items: [], want_response: true }, ItemSet { range: Range(667, 803), items: [667, 706], want_response: true }, ItemSet { range: Range(803, 830), items: [803, 827], want_response: true }, ItemSet { range: Range(830, 839), items: [832, 838], want_response: true }, ItemSet { range: Range(839, 993), items: [839, 992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 539), fp: EncodedCountingMonoid(4, SumMonoid(2090)) }, Fingerprint { range: Range(539, 577), fp: EncodedCountingMonoid(4, SumMonoid(2196)) }], item_sets: [ItemSet { range: Range(577, 667), items: [577, 579, 581, 598, 599, 615, 642, 650, 654, 655], want_response: false }, ItemSet { range: Range(667, 803), items: [667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(803, 830), items: [], want_response: false }, ItemSet { range: Range(830, 839), items: [830, 837], want_response: false }, ItemSet { range: Range(839, 993), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }], wants: [706, 803, 827, 832, 838, 839, 992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 539), items: [507, 508], want_response: true }, ItemSet { range: Range(539, 577), items: [], want_response: true }], wants: [577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(706, true), (803, true), (827, true), (832, true), (838, true), (839, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 539), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(539, 577), items: [539, 547, 548, 562], want_response: false }], wants: [503, 504, 505, 506, 507, 508], provide: [(577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562], provide: [(503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 667, 706, 803, 827, 832, 838, 839, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 519, 522, 523, 526, 539, 547, 548, 562]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 706, 803, 827, 832, 838, 839, 992, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 778, 803, 827, 832, 838, 839, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10669)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6615)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(4, SumMonoid(3114)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2509)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 839], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 827), items: [778, 803], want_response: true }, ItemSet { range: Range(827, 832), items: [827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 827), items: [755, 795], want_response: false }, ItemSet { range: Range(827, 832), items: [830], want_response: false }], wants: [503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 778, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (838, true), (839, true), (505, true), (506, true), (507, true), (508, true), (706, true), (778, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 778, 803, 827, 832, 838, 839, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 778, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 778, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 778, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 778, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 834, 838, 839, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10725)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 834), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(834, 899), fp: EncodedCountingMonoid(3, SumMonoid(2511)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 834), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(834, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(834, 894), items: [834, 838, 839], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }, ItemSet { range: Range(832, 834), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }, ItemSet { range: Range(832, 834), items: [], want_response: false }], wants: [503, 504, 834, 838, 839, 505, 506, 507, 508, 706, 803, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (834, true), (838, true), (839, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 834, 838, 839, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 834, 838, 839, 505, 506, 507, 508, 706, 803, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 834, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 834, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 834, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 862, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10753)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6699)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2539)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 862], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 862, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (862, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 862, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 862, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 848, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10739)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6685)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2525)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 848], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 848, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (848, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 848, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 848, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 841, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10732)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6678)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2518)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 841], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 841, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (841, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 841, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 841, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(9891)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(7, SumMonoid(5837)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(3, SumMonoid(2336)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2509)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 839], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }], wants: [503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (838, true), (839, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10731)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(9891)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(7, SumMonoid(5837)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(3, SumMonoid(2336)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2509)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 838, 839], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }], wants: [503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (838, true), (839, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 838, 839, 505, 506, 507, 508, 706, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10731)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 414, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10318)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(7, SumMonoid(5850)) }], item_sets: [ItemSet { range: Range(1, 414), items: [1, 17], want_response: true }, ItemSet { range: Range(414, 501), items: [414], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 414), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408], want_response: false }, ItemSet { range: Range(414, 501), items: [426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 414], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(3, SumMonoid(2341)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (414, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 838), items: [803, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 414, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 414, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 414, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 414, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 414, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 621, 706, 803, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10525)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 621), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(621, 993), fp: EncodedCountingMonoid(8, SumMonoid(6471)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 548), fp: EncodedCountingMonoid(8, SumMonoid(4179)) }, Fingerprint { range: Range(548, 621), fp: EncodedCountingMonoid(8, SumMonoid(4659)) }, Fingerprint { range: Range(621, 755), fp: EncodedCountingMonoid(15, SumMonoid(10259)) }, Fingerprint { range: Range(755, 993), fp: EncodedCountingMonoid(14, SumMonoid(12457)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(755, 839), fp: EncodedCountingMonoid(3, SumMonoid(2473)) }, Fingerprint { range: Range(839, 993), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [ItemSet { range: Range(548, 621), items: [], want_response: true }, ItemSet { range: Range(621, 755), items: [621, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 526), fp: EncodedCountingMonoid(3, SumMonoid(1564)) }, Fingerprint { range: Range(526, 548), fp: EncodedCountingMonoid(3, SumMonoid(1612)) }, Fingerprint { range: Range(839, 932), fp: EncodedCountingMonoid(5, SumMonoid(4482)) }, Fingerprint { range: Range(932, 993), fp: EncodedCountingMonoid(5, SumMonoid(4758)) }], item_sets: [ItemSet { range: Range(548, 621), items: [548, 562, 577, 579, 581, 598, 599, 615], want_response: false }, ItemSet { range: Range(621, 755), items: [642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(755, 830), items: [755, 795], want_response: true }, ItemSet { range: Range(830, 839), items: [830, 837], want_response: true }], wants: [621, 706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(755, 830), items: [803], want_response: false }, ItemSet { range: Range(830, 839), items: [832, 838], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 526), items: [507, 508], want_response: true }, ItemSet { range: Range(526, 548), items: [], want_response: true }, ItemSet { range: Range(839, 932), items: [839, 840], want_response: true }, ItemSet { range: Range(932, 993), items: [992], want_response: true }], wants: [548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(621, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 548), items: [526, 539, 547], want_response: false }, ItemSet { range: Range(839, 932), items: [850, 894, 899, 916, 923], want_response: false }, ItemSet { range: Range(932, 993), items: [932, 940, 945, 955, 986], want_response: false }], wants: [503, 504, 803, 832, 838, 505, 506, 507, 508, 839, 840, 992], provide: [(548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(503, true), (504, true), (803, true), (832, true), (838, true), (505, true), (506, true), (507, true), (508, true), (839, true), (840, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 621, 706, 803, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 519, 522, 523, 526, 539, 547, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 621, 706, 503, 504, 803, 832, 838, 505, 506, 507, 508, 839, 840, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 621, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 621, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 621, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 724, 803, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10628)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6574)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3065)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706, 724], want_response: true }, ItemSet { range: Range(795, 838), items: [803, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 724, 803, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (724, true), (803, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 724, 803, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 724, 803, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 724, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 724, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 724, 743, 746, 755, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 776, 803, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10680)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6626)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3117)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706, 776], want_response: true }, ItemSet { range: Range(795, 838), items: [803, 832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 838), items: [795, 830, 837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 776, 803, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (776, true), (803, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 776, 803, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 776, 803, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 776, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 776, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 776, 795, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 802, 803, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10706)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6652)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3143)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [802, 803], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 802, 803, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (802, true), (803, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 802, 803, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 802, 803, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 802, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 802, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 802, 803, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 815, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10719)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6665)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3156)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [803, 815], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 815, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (815, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 815, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 815, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 815, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 815, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 815, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 821, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10725)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6671)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3162)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [803, 821], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 821, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (821, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 821, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 821, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 821, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 821, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 821, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 824, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10728)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6674)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3165)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [803, 824], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 824, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (824, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 824, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 824, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 824, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 824, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 824, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 826, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10730)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6676)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3167)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }, ItemSet { range: Range(795, 832), items: [803, 826], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(795, 832), items: [795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 826, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (826, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 826, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706, 803, 826, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 826, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 826, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 826, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10731)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 419, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10312)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(7, SumMonoid(5839)) }], item_sets: [ItemSet { range: Range(1, 419), items: [1, 17], want_response: true }, ItemSet { range: Range(419, 501), items: [419], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 419), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408], want_response: false }, ItemSet { range: Range(419, 501), items: [426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17, 419], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(3, SumMonoid(2336)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2511)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true), (419, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }], wants: [503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 419, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 419, 992, 503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 419, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 419, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 419, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 629, 706, 803, 827, 832, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10522)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 629), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(629, 993), fp: EncodedCountingMonoid(8, SumMonoid(6468)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 548), fp: EncodedCountingMonoid(8, SumMonoid(4179)) }, Fingerprint { range: Range(548, 629), fp: EncodedCountingMonoid(8, SumMonoid(4659)) }, Fingerprint { range: Range(629, 755), fp: EncodedCountingMonoid(15, SumMonoid(10259)) }, Fingerprint { range: Range(755, 993), fp: EncodedCountingMonoid(14, SumMonoid(12457)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(755, 839), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(839, 993), fp: EncodedCountingMonoid(3, SumMonoid(2671)) }], item_sets: [ItemSet { range: Range(548, 629), items: [], want_response: true }, ItemSet { range: Range(629, 755), items: [629, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 526), fp: EncodedCountingMonoid(3, SumMonoid(1564)) }, Fingerprint { range: Range(526, 548), fp: EncodedCountingMonoid(3, SumMonoid(1612)) }, Fingerprint { range: Range(839, 932), fp: EncodedCountingMonoid(5, SumMonoid(4482)) }, Fingerprint { range: Range(932, 993), fp: EncodedCountingMonoid(5, SumMonoid(4758)) }], item_sets: [ItemSet { range: Range(548, 629), items: [548, 562, 577, 579, 581, 598, 599, 615], want_response: false }, ItemSet { range: Range(629, 755), items: [642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(755, 830), items: [755, 795], want_response: true }, ItemSet { range: Range(830, 839), items: [830, 837], want_response: true }], wants: [629, 706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(755, 830), items: [803, 827], want_response: false }, ItemSet { range: Range(830, 839), items: [832], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 526), items: [507, 508], want_response: true }, ItemSet { range: Range(526, 548), items: [], want_response: true }, ItemSet { range: Range(839, 932), items: [839, 840], want_response: true }, ItemSet { range: Range(932, 993), items: [992], want_response: true }], wants: [548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(629, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 526), items: [519, 522, 523], want_response: false }, ItemSet { range: Range(526, 548), items: [526, 539, 547], want_response: false }, ItemSet { range: Range(839, 932), items: [850, 894, 899, 916, 923], want_response: false }, ItemSet { range: Range(932, 993), items: [932, 940, 945, 955, 986], want_response: false }], wants: [503, 504, 803, 827, 832, 505, 506, 507, 508, 839, 840, 992], provide: [(548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986], provide: [(503, true), (504, true), (803, true), (827, true), (832, true), (505, true), (506, true), (507, true), (508, true), (839, true), (840, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 629, 706, 803, 827, 832, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 519, 522, 523, 526, 539, 547, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 629, 706, 503, 504, 803, 827, 832, 505, 506, 507, 508, 839, 840, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 629, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 629, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 629, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 734, 803, 827, 832, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10627)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6573)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(4, SumMonoid(3070)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2511)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706, 734], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }], wants: [503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 734, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (734, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 734, 803, 827, 832, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 734, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 734, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 734, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 734, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 786, 803, 827, 832, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10679)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6625)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(4, SumMonoid(3122)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2511)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 827), items: [786, 803], want_response: true }, ItemSet { range: Range(827, 832), items: [827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 827), items: [755, 795], want_response: false }, ItemSet { range: Range(827, 832), items: [830], want_response: false }], wants: [503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 786, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (786, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 786, 803, 827, 832, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 786, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 786, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 786, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 786, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 812, 827, 832, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10705)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6651)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(4, SumMonoid(3148)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2511)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 827), items: [803, 812], want_response: true }, ItemSet { range: Range(827, 832), items: [827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 827), items: [755, 795], want_response: false }, ItemSet { range: Range(827, 832), items: [830], want_response: false }], wants: [503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 812, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (812, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 812, 827, 832, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 812, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 812, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 812, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 812, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 825, 827, 832, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10718)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6664)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(4, SumMonoid(3161)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2511)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 827), items: [803, 825], want_response: true }, ItemSet { range: Range(827, 832), items: [827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 827), items: [755, 795], want_response: false }, ItemSet { range: Range(827, 832), items: [830], want_response: false }], wants: [503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 825, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (825, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 825, 827, 832, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 825, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 825, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 825, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 825, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(9893)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(7, SumMonoid(5839)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 832), fp: EncodedCountingMonoid(3, SumMonoid(2336)) }, Fingerprint { range: Range(832, 899), fp: EncodedCountingMonoid(3, SumMonoid(2511)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 832), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(832, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(832, 894), items: [832, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }], wants: [503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 827], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (832, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 832, 839, 840, 505, 506, 507, 508, 706, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 835, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10728)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6674)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 835), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(835, 899), fp: EncodedCountingMonoid(3, SumMonoid(2514)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 835), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(835, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(835, 894), items: [835, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }, ItemSet { range: Range(832, 835), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }, ItemSet { range: Range(832, 835), items: [], want_response: false }], wants: [503, 504, 835, 839, 840, 505, 506, 507, 508, 706, 803, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (837, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (835, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 835, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 837, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 835, 839, 840, 505, 506, 507, 508, 706, 803, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 835, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 835, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 835, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 837, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10730)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6676)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 837), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(837, 899), fp: EncodedCountingMonoid(3, SumMonoid(2516)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 755), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(755, 837), fp: EncodedCountingMonoid(3, SumMonoid(2380)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(837, 894), items: [837, 850], want_response: true }, ItemSet { range: Range(894, 899), items: [894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(837, 894), items: [837, 839, 840], want_response: false }, ItemSet { range: Range(894, 899), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }, ItemSet { range: Range(832, 837), items: [832], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 755), items: [712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }, ItemSet { range: Range(832, 837), items: [], want_response: false }], wants: [503, 504, 839, 840, 505, 506, 507, 508, 706, 803, 827, 832], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830], provide: [(503, true), (504, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true), (803, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 837, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755, 795, 830]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 839, 840, 505, 506, 507, 508, 706, 803, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 17, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 992, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10731)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 17], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 17], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (17, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 17, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 17, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 9, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10723)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 9], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 9], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 9, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 9, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 5, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10719)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 5], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 5], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (5, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 5, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 5, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 3, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10717)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 3], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 3], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (3, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 3, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 3, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 2, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(18, SumMonoid(10716)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1, 2], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1, 2], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true), (2, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 2, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 2, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 993), fp: EncodedCountingMonoid(17, SumMonoid(10714)) }], item_sets: [ItemSet { range: Range(993, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 501), fp: EncodedCountingMonoid(46, SumMonoid(11702)) }, Fingerprint { range: Range(501, 993), fp: EncodedCountingMonoid(45, SumMonoid(31554)) }], item_sets: [ItemSet { range: Range(993, 1), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 993), fp: EncodedCountingMonoid(8, SumMonoid(6677)) }], item_sets: [ItemSet { range: Range(1, 501), items: [1], want_response: true }], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(501, 599), fp: EncodedCountingMonoid(14, SumMonoid(7624)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 899), fp: EncodedCountingMonoid(9, SumMonoid(7162)) }, Fingerprint { range: Range(899, 993), fp: EncodedCountingMonoid(8, SumMonoid(7496)) }], item_sets: [ItemSet { range: Range(1, 501), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], want_response: false }], wants: [1], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(501, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(706, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 899), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(899, 993), items: [992], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 599), fp: EncodedCountingMonoid(6, SumMonoid(3445)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(899, 993), items: [899, 916, 923, 932, 940, 945, 955, 986], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 899), items: [850, 894], want_response: true }], wants: [992], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true), (452, true), (463, true), (469, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 899), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 599), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 599), items: [548, 562, 577, 579, 581, 598], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508, 706], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (850, true), (894, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840, 992} + [993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 899, 916, 923, 932, 940, 945, 955, 986, 850, 894, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 712, 743, 746, 755]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 992, 503, 504, 838, 839, 840, 505, 506, 507, 508, 706]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 496, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10218)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 508), fp: EncodedCountingMonoid(8, SumMonoid(4024)) }, Fingerprint { range: Range(508, 841), fp: EncodedCountingMonoid(8, SumMonoid(6193)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 508), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(508, 655), fp: EncodedCountingMonoid(17, SumMonoid(9781)) }, Fingerprint { range: Range(655, 841), fp: EncodedCountingMonoid(16, SumMonoid(11530)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(496, 504), fp: EncodedCountingMonoid(4, SumMonoid(2002)) }, Fingerprint { range: Range(504, 508), fp: EncodedCountingMonoid(4, SumMonoid(2022)) }, Fingerprint { range: Range(655, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(508, 655), items: [508], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(655, 705), fp: EncodedCountingMonoid(8, SumMonoid(5407)) }, Fingerprint { range: Range(705, 838), fp: EncodedCountingMonoid(8, SumMonoid(6123)) }], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(508, 655), items: [519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654], want_response: false }, ItemSet { range: Range(496, 502), items: [496, 501], want_response: true }, ItemSet { range: Range(502, 504), items: [502], want_response: true }, ItemSet { range: Range(504, 508), items: [], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [508], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(496, 502), items: [496, 501], want_response: false }, ItemSet { range: Range(502, 504), items: [502, 503], want_response: false }, ItemSet { range: Range(504, 508), items: [504, 505, 506, 507], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(655, 705), items: [], want_response: true }, ItemSet { range: Range(705, 827), items: [706, 803], want_response: true }, ItemSet { range: Range(827, 838), items: [827, 832], want_response: true }], wants: [452, 463, 469, 481, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654], provide: [(508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(655, 705), items: [655, 667, 668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(705, 827), items: [705, 712, 743, 746, 755, 795], want_response: false }, ItemSet { range: Range(827, 838), items: [830, 837], want_response: false }], wants: [503, 504, 505, 506, 507, 838, 839, 840, 706, 803, 827, 832], provide: [(452, true), (463, true), (469, true), (481, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(503, true), (504, true), (505, true), (506, true), (507, true), (838, true), (839, true), (840, true), (706, true), (803, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 496, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 508, 503, 504, 505, 506, 507, 838, 839, 840, 706, 803, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 744, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10466)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(8, SumMonoid(6429)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 581), fp: EncodedCountingMonoid(17, SumMonoid(8806)) }, Fingerprint { range: Range(581, 706), fp: EncodedCountingMonoid(16, SumMonoid(10451)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 581), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(581, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706, 744], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(5, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(581, 706), items: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706, 744], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 581), items: [], want_response: true }], wants: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true), (744, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 581), items: [547, 548, 562, 577, 579], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 744, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 744, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 620, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10342)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 620), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(620, 841), fp: EncodedCountingMonoid(8, SumMonoid(6305)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 539), fp: EncodedCountingMonoid(11, SumMonoid(5454)) }, Fingerprint { range: Range(539, 620), fp: EncodedCountingMonoid(10, SumMonoid(5745)) }, Fingerprint { range: Range(620, 693), fp: EncodedCountingMonoid(10, SumMonoid(6660)) }, Fingerprint { range: Range(693, 841), fp: EncodedCountingMonoid(9, SumMonoid(6816)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 539), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(693, 838), fp: EncodedCountingMonoid(4, SumMonoid(3168)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(539, 620), items: [], want_response: true }, ItemSet { range: Range(620, 693), items: [620], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(693, 755), fp: EncodedCountingMonoid(5, SumMonoid(3599)) }, Fingerprint { range: Range(755, 838), fp: EncodedCountingMonoid(4, SumMonoid(3217)) }], item_sets: [ItemSet { range: Range(539, 620), items: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615], want_response: false }, ItemSet { range: Range(620, 693), items: [642, 650, 654, 655, 667, 668, 676, 680, 681, 687], want_response: false }, ItemSet { range: Range(505, 523), items: [519, 522], want_response: true }, ItemSet { range: Range(523, 539), items: [523, 526], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [620], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 523), items: [505, 506, 507, 508], want_response: false }, ItemSet { range: Range(523, 539), items: [], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(693, 755), items: [706], want_response: true }, ItemSet { range: Range(755, 832), items: [803, 827], want_response: true }, ItemSet { range: Range(832, 838), items: [832], want_response: true }], wants: [539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 519, 522, 523, 526], provide: [(620, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(693, 755), items: [693, 705, 712, 743, 746], want_response: false }, ItemSet { range: Range(755, 832), items: [755, 795, 830], want_response: false }, ItemSet { range: Range(832, 838), items: [837], want_response: false }], wants: [505, 506, 507, 508, 838, 839, 840, 503, 504, 706, 803, 827, 832], provide: [(539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (519, true), (522, true), (523, true), (526, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 693, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(505, true), (506, true), (507, true), (508, true), (838, true), (839, true), (840, true), (503, true), (504, true), (706, true), (803, true), (827, true), (832, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 620, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 519, 522, 523, 526, 452, 463, 469, 481, 496, 693, 705, 712, 743, 746, 755, 795, 830, 837]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 620, 505, 506, 507, 508, 838, 839, 840, 503, 504, 706, 803, 827, 832]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 620, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 620, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 620, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 682, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10404)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 682), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(682, 841), fp: EncodedCountingMonoid(8, SumMonoid(6367)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 577), fp: EncodedCountingMonoid(15, SumMonoid(7650)) }, Fingerprint { range: Range(577, 682), fp: EncodedCountingMonoid(15, SumMonoid(9522)) }, Fingerprint { range: Range(682, 746), fp: EncodedCountingMonoid(5, SumMonoid(3540)) }, Fingerprint { range: Range(746, 841), fp: EncodedCountingMonoid(5, SumMonoid(3963)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 577), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(746, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(577, 682), items: [], want_response: true }, ItemSet { range: Range(682, 746), items: [682, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 539), fp: EncodedCountingMonoid(4, SumMonoid(2090)) }, Fingerprint { range: Range(539, 577), fp: EncodedCountingMonoid(4, SumMonoid(2196)) }, Fingerprint { range: Range(746, 830), fp: EncodedCountingMonoid(3, SumMonoid(2296)) }], item_sets: [ItemSet { range: Range(577, 682), items: [577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681], want_response: false }, ItemSet { range: Range(682, 746), items: [687, 693, 705, 712, 743], want_response: false }, ItemSet { range: Range(830, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [682, 706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(830, 838), items: [832], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 539), items: [507, 508], want_response: true }, ItemSet { range: Range(539, 577), items: [], want_response: true }, ItemSet { range: Range(746, 830), items: [803, 827], want_response: true }], wants: [577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 830, 837], provide: [(682, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 539), items: [519, 522, 523, 526], want_response: false }, ItemSet { range: Range(539, 577), items: [539, 547, 548, 562], want_response: false }, ItemSet { range: Range(746, 830), items: [746, 755, 795], want_response: false }], wants: [832, 838, 839, 840, 503, 504, 505, 506, 507, 508, 803, 827], provide: [(577, true), (579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 746, 755, 795], provide: [(832, true), (838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true), (803, true), (827, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (746, true), (755, true), (795, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 682, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 830, 837, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 746, 755, 795]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 682, 706, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508, 803, 827]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 682, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 713, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10435)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(8, SumMonoid(6398)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 581), fp: EncodedCountingMonoid(17, SumMonoid(8806)) }, Fingerprint { range: Range(581, 706), fp: EncodedCountingMonoid(16, SumMonoid(10451)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 581), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(581, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706, 713], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(5, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(581, 706), items: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706, 713], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 581), items: [], want_response: true }], wants: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true), (713, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 581), items: [547, 548, 562, 577, 579], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 713, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 713, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 698, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10420)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 698), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(698, 841), fp: EncodedCountingMonoid(8, SumMonoid(6383)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 579), fp: EncodedCountingMonoid(16, SumMonoid(8227)) }, Fingerprint { range: Range(579, 698), fp: EncodedCountingMonoid(16, SumMonoid(10325)) }, Fingerprint { range: Range(698, 755), fp: EncodedCountingMonoid(4, SumMonoid(2906)) }, Fingerprint { range: Range(755, 841), fp: EncodedCountingMonoid(4, SumMonoid(3217)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 579), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(755, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(579, 698), items: [], want_response: true }, ItemSet { range: Range(698, 755), items: [698, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 579), fp: EncodedCountingMonoid(4, SumMonoid(2234)) }], item_sets: [ItemSet { range: Range(579, 698), items: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(698, 755), items: [705, 712, 743, 746], want_response: false }, ItemSet { range: Range(755, 830), items: [755, 795], want_response: true }, ItemSet { range: Range(830, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [698, 706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(755, 830), items: [803, 827], want_response: false }, ItemSet { range: Range(830, 838), items: [832], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 579), items: [], want_response: true }], wants: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(698, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 579), items: [547, 548, 562, 577], want_response: false }], wants: [803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577], provide: [(803, true), (827, true), (832, true), (838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 698, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 698, 706, 803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 698, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 698, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 698, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 581), fp: EncodedCountingMonoid(17, SumMonoid(8806)) }, Fingerprint { range: Range(581, 706), fp: EncodedCountingMonoid(16, SumMonoid(10451)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 581), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(581, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(5, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(581, 706), items: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 581), items: [], want_response: true }], wants: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 581), items: [547, 548, 562, 577, 579], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 702, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10424)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 702), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(702, 841), fp: EncodedCountingMonoid(8, SumMonoid(6387)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 579), fp: EncodedCountingMonoid(16, SumMonoid(8227)) }, Fingerprint { range: Range(579, 702), fp: EncodedCountingMonoid(16, SumMonoid(10325)) }, Fingerprint { range: Range(702, 755), fp: EncodedCountingMonoid(4, SumMonoid(2906)) }, Fingerprint { range: Range(755, 841), fp: EncodedCountingMonoid(4, SumMonoid(3217)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 579), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(755, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(579, 702), items: [], want_response: true }, ItemSet { range: Range(702, 755), items: [702, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 579), fp: EncodedCountingMonoid(4, SumMonoid(2234)) }], item_sets: [ItemSet { range: Range(579, 702), items: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(702, 755), items: [705, 712, 743, 746], want_response: false }, ItemSet { range: Range(755, 830), items: [755, 795], want_response: true }, ItemSet { range: Range(830, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [702, 706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(755, 830), items: [803, 827], want_response: false }, ItemSet { range: Range(830, 838), items: [832], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 579), items: [], want_response: true }], wants: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(702, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 579), items: [547, 548, 562, 577], want_response: false }], wants: [803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577], provide: [(803, true), (827, true), (832, true), (838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 702, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 702, 706, 803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 702, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 702, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 702, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 704, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10426)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 704), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(704, 841), fp: EncodedCountingMonoid(8, SumMonoid(6389)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 579), fp: EncodedCountingMonoid(16, SumMonoid(8227)) }, Fingerprint { range: Range(579, 704), fp: EncodedCountingMonoid(16, SumMonoid(10325)) }, Fingerprint { range: Range(704, 755), fp: EncodedCountingMonoid(4, SumMonoid(2906)) }, Fingerprint { range: Range(755, 841), fp: EncodedCountingMonoid(4, SumMonoid(3217)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 579), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(755, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(579, 704), items: [], want_response: true }, ItemSet { range: Range(704, 755), items: [704, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 579), fp: EncodedCountingMonoid(4, SumMonoid(2234)) }], item_sets: [ItemSet { range: Range(579, 704), items: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(704, 755), items: [705, 712, 743, 746], want_response: false }, ItemSet { range: Range(755, 830), items: [755, 795], want_response: true }, ItemSet { range: Range(830, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [704, 706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(755, 830), items: [803, 827], want_response: false }, ItemSet { range: Range(830, 838), items: [832], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 579), items: [], want_response: true }], wants: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837], provide: [(704, true), (706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 579), items: [547, 548, 562, 577], want_response: false }], wants: [803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577], provide: [(803, true), (827, true), (832, true), (838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 704, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 704, 706, 803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 704, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 704, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 704, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 705, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(17, SumMonoid(10427)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 705), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(705, 841), fp: EncodedCountingMonoid(8, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 579), fp: EncodedCountingMonoid(16, SumMonoid(8227)) }, Fingerprint { range: Range(579, 705), fp: EncodedCountingMonoid(16, SumMonoid(10325)) }, Fingerprint { range: Range(705, 755), fp: EncodedCountingMonoid(4, SumMonoid(2906)) }, Fingerprint { range: Range(755, 841), fp: EncodedCountingMonoid(4, SumMonoid(3217)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 579), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(755, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(579, 705), items: [], want_response: true }, ItemSet { range: Range(705, 755), items: [705, 706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 579), fp: EncodedCountingMonoid(4, SumMonoid(2234)) }], item_sets: [ItemSet { range: Range(579, 705), items: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693], want_response: false }, ItemSet { range: Range(705, 755), items: [705, 712, 743, 746], want_response: false }, ItemSet { range: Range(755, 830), items: [755, 795], want_response: true }, ItemSet { range: Range(830, 838), items: [830, 837], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(755, 830), items: [803, 827], want_response: false }, ItemSet { range: Range(830, 838), items: [832], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 579), items: [], want_response: true }], wants: [579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 712, 743, 746, 755, 795, 830, 837], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 579), items: [547, 548, 562, 577], want_response: false }], wants: [803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(579, true), (581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (712, true), (743, true), (746, true), (755, true), (795, true), (830, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577], provide: [(803, true), (827, true), (832, true), (838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 705, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 712, 743, 746, 755, 795, 830, 837, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 803, 827, 832, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 503, 504, 505, 506, 507, 508, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 706, 712, 743, 746, 755, 795, 803, 827, 830, 832, 837, 838, 839, 840, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(41, SumMonoid(9341)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 581), fp: EncodedCountingMonoid(17, SumMonoid(8806)) }, Fingerprint { range: Range(581, 706), fp: EncodedCountingMonoid(16, SumMonoid(10451)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 581), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(581, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(5, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(581, 706), items: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (159, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 581), items: [], want_response: true }], wants: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 581), items: [547, 548, 562, 577, 579], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 159, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(40, SumMonoid(9182)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(40, SumMonoid(24675)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 581), fp: EncodedCountingMonoid(17, SumMonoid(8806)) }, Fingerprint { range: Range(581, 706), fp: EncodedCountingMonoid(16, SumMonoid(10451)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 581), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(581, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(5, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(581, 706), items: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (426, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 581), items: [], want_response: true }], wants: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 581), items: [547, 548, 562, 577, 579], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 452, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 426, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 463), fp: EncodedCountingMonoid(40, SumMonoid(9208)) }, Fingerprint { range: Range(463, 841), fp: EncodedCountingMonoid(39, SumMonoid(24223)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 463), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 581), fp: EncodedCountingMonoid(16, SumMonoid(8354)) }, Fingerprint { range: Range(581, 706), fp: EncodedCountingMonoid(16, SumMonoid(10451)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 463), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 581), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(581, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 496), fp: EncodedCountingMonoid(3, SumMonoid(1413)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(5, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(581, 706), items: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (320, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(463, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 581), items: [], want_response: true }], wants: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(463, 496), items: [463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 581), items: [547, 548, 562, 577, 579], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 320, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 463), fp: EncodedCountingMonoid(39, SumMonoid(8888)) }, Fingerprint { range: Range(463, 841), fp: EncodedCountingMonoid(39, SumMonoid(24223)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 463), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 581), fp: EncodedCountingMonoid(16, SumMonoid(8354)) }, Fingerprint { range: Range(581, 706), fp: EncodedCountingMonoid(16, SumMonoid(10451)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 463), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 581), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(581, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 496), fp: EncodedCountingMonoid(3, SumMonoid(1413)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 547), fp: EncodedCountingMonoid(5, SumMonoid(2629)) }, Fingerprint { range: Range(547, 581), fp: EncodedCountingMonoid(5, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(581, 706), items: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (197, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(463, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 547), items: [507, 508], want_response: true }, ItemSet { range: Range(547, 581), items: [], want_response: true }], wants: [581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(463, 496), items: [463, 469, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 547), items: [519, 522, 523, 526, 539], want_response: false }, ItemSet { range: Range(547, 581), items: [547, 548, 562, 577, 579], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(581, true), (598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(463, true), (469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 463, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 197, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 469), fp: EncodedCountingMonoid(39, SumMonoid(9154)) }, Fingerprint { range: Range(469, 841), fp: EncodedCountingMonoid(38, SumMonoid(23760)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(469, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 469), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(469, 598), fp: EncodedCountingMonoid(16, SumMonoid(8472)) }, Fingerprint { range: Range(598, 706), fp: EncodedCountingMonoid(15, SumMonoid(9870)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 469), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(469, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 598), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(598, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(469, 501), fp: EncodedCountingMonoid(3, SumMonoid(1446)) }, Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }], item_sets: [ItemSet { range: Range(598, 706), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true), (463, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(469, 501), items: [], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(469, 501), items: [469, 481, 496], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(469, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 469, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 469, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 503, 504, 838, 839, 840, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 463), fp: EncodedCountingMonoid(38, SumMonoid(8691)) }, Fingerprint { range: Range(463, 841), fp: EncodedCountingMonoid(38, SumMonoid(23754)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 463), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 598), fp: EncodedCountingMonoid(16, SumMonoid(8466)) }, Fingerprint { range: Range(598, 706), fp: EncodedCountingMonoid(15, SumMonoid(9870)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 463), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 598), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(598, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(3, SumMonoid(1440)) }, Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(6, SumMonoid(3176)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }], item_sets: [ItemSet { range: Range(598, 706), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(463, 501), items: [], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(463, 501), items: [463, 481, 496], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 539, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [463, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(463, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (539, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 463, 481, 496, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 526, 539, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 503, 504, 838, 839, 840, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 526, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 463), fp: EncodedCountingMonoid(38, SumMonoid(8691)) }, Fingerprint { range: Range(463, 841), fp: EncodedCountingMonoid(37, SumMonoid(23215)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 463), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 598), fp: EncodedCountingMonoid(15, SumMonoid(7927)) }, Fingerprint { range: Range(598, 706), fp: EncodedCountingMonoid(15, SumMonoid(9870)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 463), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 598), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(598, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(3, SumMonoid(1440)) }, Fingerprint { range: Range(505, 548), fp: EncodedCountingMonoid(5, SumMonoid(2637)) }, Fingerprint { range: Range(548, 598), fp: EncodedCountingMonoid(5, SumMonoid(2847)) }], item_sets: [ItemSet { range: Range(598, 706), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(463, 501), items: [], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 548), items: [507, 508], want_response: true }, ItemSet { range: Range(548, 598), items: [], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(463, 501), items: [463, 481, 496], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 548), items: [519, 522, 523, 526, 547], want_response: false }, ItemSet { range: Range(548, 598), items: [548, 562, 577, 579, 581], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [463, 481, 496, 519, 522, 523, 526, 547, 548, 562, 577, 579, 581], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(463, true), (481, true), (496, true), (519, true), (522, true), (523, true), (526, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 463, 481, 496, 519, 522, 523, 526, 547, 548, 562, 577, 579, 581]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 526, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 503, 504, 838, 839, 840, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 452), fp: EncodedCountingMonoid(37, SumMonoid(8239)) }, Fingerprint { range: Range(452, 841), fp: EncodedCountingMonoid(37, SumMonoid(23141)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 452), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 598), fp: EncodedCountingMonoid(15, SumMonoid(7853)) }, Fingerprint { range: Range(598, 706), fp: EncodedCountingMonoid(15, SumMonoid(9870)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 452), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(452, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 598), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(598, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(452, 496), fp: EncodedCountingMonoid(3, SumMonoid(1396)) }, Fingerprint { range: Range(496, 505), fp: EncodedCountingMonoid(3, SumMonoid(1499)) }, Fingerprint { range: Range(505, 562), fp: EncodedCountingMonoid(5, SumMonoid(2659)) }, Fingerprint { range: Range(562, 598), fp: EncodedCountingMonoid(4, SumMonoid(2299)) }], item_sets: [ItemSet { range: Range(598, 706), items: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (216, true), (225, true), (261, true), (271, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(452, 496), items: [], want_response: true }, ItemSet { range: Range(496, 503), items: [501, 502], want_response: true }, ItemSet { range: Range(503, 505), items: [503, 504], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 562), items: [507, 508], want_response: true }, ItemSet { range: Range(562, 598), items: [], want_response: true }], wants: [598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(452, 496), items: [452, 463, 481], want_response: false }, ItemSet { range: Range(496, 503), items: [496, 501, 502], want_response: false }, ItemSet { range: Range(503, 505), items: [], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 562), items: [519, 522, 523, 547, 548], want_response: false }, ItemSet { range: Range(562, 598), items: [562, 577, 579, 581], want_response: false }], wants: [838, 839, 840, 503, 504, 505, 506, 507, 508], provide: [(598, true), (599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [452, 463, 481, 496, 519, 522, 523, 547, 548, 562, 577, 579, 581], provide: [(838, true), (839, true), (840, true), (503, true), (504, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(452, true), (463, true), (481, true), (496, true), (519, true), (522, true), (523, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 452, 463, 481, 496, 519, 522, 523, 547, 548, 562, 577, 579, 581]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 271, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 838, 839, 840, 503, 504, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 463), fp: EncodedCountingMonoid(37, SumMonoid(8420)) }, Fingerprint { range: Range(463, 841), fp: EncodedCountingMonoid(36, SumMonoid(22689)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 463), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 599), fp: EncodedCountingMonoid(15, SumMonoid(7999)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 463), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(3, SumMonoid(1440)) }, Fingerprint { range: Range(505, 562), fp: EncodedCountingMonoid(5, SumMonoid(2659)) }, Fingerprint { range: Range(562, 599), fp: EncodedCountingMonoid(5, SumMonoid(2897)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (133, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (216, true), (225, true), (261, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(463, 501), items: [], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 562), items: [507, 508], want_response: true }, ItemSet { range: Range(562, 599), items: [], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(463, 501), items: [463, 481, 496], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 562), items: [519, 522, 523, 547, 548], want_response: false }, ItemSet { range: Range(562, 599), items: [562, 577, 579, 581, 598], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [463, 481, 496, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(463, true), (481, true), (496, true), (519, true), (522, true), (523, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 463, 481, 496, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 133, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 503, 504, 838, 839, 840, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 463), fp: EncodedCountingMonoid(36, SumMonoid(8287)) }, Fingerprint { range: Range(463, 841), fp: EncodedCountingMonoid(36, SumMonoid(22689)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 463), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 599), fp: EncodedCountingMonoid(15, SumMonoid(7999)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 463), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(463, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(463, 501), fp: EncodedCountingMonoid(3, SumMonoid(1440)) }, Fingerprint { range: Range(505, 562), fp: EncodedCountingMonoid(5, SumMonoid(2659)) }, Fingerprint { range: Range(562, 599), fp: EncodedCountingMonoid(5, SumMonoid(2897)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (142, true), (148, true), (161, true), (163, true), (188, true), (190, true), (216, true), (225, true), (261, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(463, 501), items: [], want_response: true }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 562), items: [507, 508], want_response: true }, ItemSet { range: Range(562, 599), items: [], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(463, 501), items: [463, 481, 496], want_response: false }, ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 562), items: [519, 522, 523, 547, 548], want_response: false }, ItemSet { range: Range(562, 599), items: [562, 577, 579, 581, 598], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [463, 481, 496, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(463, true), (481, true), (496, true), (519, true), (522, true), (523, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 463, 481, 496, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 163, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 503, 504, 838, 839, 840, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[INFO] [stdout] b items: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 841), fp: EncodedCountingMonoid(16, SumMonoid(9722)) }], item_sets: [ItemSet { range: Range(841, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 481), fp: EncodedCountingMonoid(36, SumMonoid(8587)) }, Fingerprint { range: Range(481, 841), fp: EncodedCountingMonoid(35, SumMonoid(22226)) }], item_sets: [ItemSet { range: Range(841, 1), items: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(481, 706), fp: EncodedCountingMonoid(8, SumMonoid(4036)) }, Fingerprint { range: Range(706, 841), fp: EncodedCountingMonoid(7, SumMonoid(5685)) }], item_sets: [ItemSet { range: Range(1, 481), items: [1], want_response: true }], wants: [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(481, 599), fp: EncodedCountingMonoid(14, SumMonoid(7536)) }, Fingerprint { range: Range(599, 706), fp: EncodedCountingMonoid(14, SumMonoid(9272)) }, Fingerprint { range: Range(706, 795), fp: EncodedCountingMonoid(4, SumMonoid(2956)) }, Fingerprint { range: Range(795, 841), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }], item_sets: [ItemSet { range: Range(1, 481), items: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463], want_response: false }], wants: [1], provide: [(850, true), (894, true), (899, true), (916, true), (923, true), (932, true), (940, true), (945, true), (955, true), (986, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(481, 505), fp: EncodedCountingMonoid(4, SumMonoid(2010)) }, Fingerprint { range: Range(505, 599), fp: EncodedCountingMonoid(4, SumMonoid(2026)) }, Fingerprint { range: Range(795, 838), fp: EncodedCountingMonoid(3, SumMonoid(2462)) }, Fingerprint { range: Range(838, 841), fp: EncodedCountingMonoid(3, SumMonoid(2517)) }], item_sets: [ItemSet { range: Range(599, 706), items: [], want_response: true }, ItemSet { range: Range(706, 795), items: [706], want_response: true }], wants: [7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(505, 562), fp: EncodedCountingMonoid(5, SumMonoid(2659)) }, Fingerprint { range: Range(562, 599), fp: EncodedCountingMonoid(5, SumMonoid(2897)) }], item_sets: [ItemSet { range: Range(599, 706), items: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705], want_response: false }, ItemSet { range: Range(706, 795), items: [712, 743, 746, 755], want_response: false }, ItemSet { range: Range(481, 501), items: [481, 496], want_response: true }, ItemSet { range: Range(501, 505), items: [501, 502], want_response: true }, ItemSet { range: Range(838, 841), items: [], want_response: true }], wants: [706], provide: [(7, true), (31, true), (39, true), (40, true), (62, true), (67, true), (83, true), (87, true), (103, true), (109, true), (142, true), (148, true), (161, true), (188, true), (190, true), (216, true), (225, true), (261, true), (286, true), (292, true), (300, true), (301, true), (309, true), (321, true), (324, true), (349, true), (352, true), (353, true), (366, true), (379, true), (384, true), (388, true), (401, true), (408, true), (452, true), (463, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(481, 501), items: [], want_response: false }, ItemSet { range: Range(501, 505), items: [501, 502, 503, 504], want_response: false }, ItemSet { range: Range(838, 841), items: [838, 839, 840], want_response: false }, ItemSet { range: Range(505, 507), items: [505, 506], want_response: true }, ItemSet { range: Range(507, 562), items: [507, 508], want_response: true }, ItemSet { range: Range(562, 599), items: [], want_response: true }], wants: [599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 481, 496], provide: [(706, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(505, 507), items: [], want_response: false }, ItemSet { range: Range(507, 562), items: [519, 522, 523, 547, 548], want_response: false }, ItemSet { range: Range(562, 599), items: [562, 577, 579, 581, 598], want_response: false }], wants: [503, 504, 838, 839, 840, 505, 506, 507, 508], provide: [(599, true), (615, true), (642, true), (650, true), (654, true), (655, true), (667, true), (668, true), (676, true), (680, true), (681, true), (687, true), (693, true), (705, true), (712, true), (743, true), (746, true), (755, true), (481, true), (496, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [519, 522, 523, 547, 548, 562, 577, 579, 581, 598], provide: [(503, true), (504, true), (838, true), (839, true), (840, true), (505, true), (506, true), (507, true), (508, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(519, true), (522, true), (523, true), (547, true), (548, true), (562, true), (577, true), (579, true), (581, true), (598, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840} + [850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993, 7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 481, 496, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598]
[INFO] [stdout] b all: {7, 31, 39, 40, 62, 67, 83, 87, 103, 109, 142, 148, 161, 188, 190, 216, 225, 261, 286, 292, 300, 301, 309, 321, 324, 349, 352, 353, 366, 379, 384, 388, 401, 408, 452, 463, 481, 496, 501, 502, 519, 522, 523, 547, 548, 562, 577, 579, 581, 598, 599, 615, 642, 650, 654, 655, 667, 668, 676, 680, 681, 687, 693, 705, 712, 743, 746, 755, 795, 830, 837, 850, 894, 899, 916, 923, 932, 940, 945, 955, 986, 993} + [1, 706, 503, 504, 838, 839, 840, 505, 506, 507, 508]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 502, 503, 504, 505, 506, 507, 508, 706, 803, 827, 832, 838, 839, 840}
[WARN] too many lines in the log, truncating it
